Thursday, December 29, 2016

Prototyping some interfaces

This is a stage of development where big decisions need to be made. I have to design the interface and most of the game design at the same time. I already have some idea of how this game will be played, by merging ideas from two existing games together: Clicker Heroes and Zombidle. This may be the first game I make that has the feature of guilds to offer a social aspect.

Interface sketches to elicit solid design ideas.

I have a good feeling about this project. I have gotten a better grasp on this type of genre, which is "clicker" or "idle" oriented. I actually play a few. It offers a great sense of endless progression and should be easier to balance over games that are designed to be played continuously in long sessions. For example, traditional first-person-shooters and strategy games can easily feel too easy or too hard if not balanced correctly, and is contingent on the player's skill, anyways.

It will be technically difficult to handle cheating if I make this game competitive online. Frankly, based on income from Zombie Guard, ads earn far more money than in-app purchases (thanks Google!). So, as long as people are playing the game, cheating or not, it ought to be lucrative anyways. I plan on having currency earned by watching video ads from time to time - it may sound incredibly greedy, but it simply works; as a player, I do not mind at all if it is optional.

Zombie Guard is more of an arcade game that has some freemium features tacked on. The player eventually runs out of gas to continue playing levels, unless they wait three hours in real life to earn more. Based on critical remarks, I eventually neutralized that feature so the game is more of an arcade game. Again, ads earned more, so I had less incentive to encourage players to buy gas "pay to play". Scratch Tickets on the other hand, had a similar three hour freemium feature, but it succeeded because of the limited depth of the game.

This game will have a little bit of randomness and a little bit of strategy. The various upgrades, heroes, items, and fighting locations will offer an interesting long term experience, especially as it grows with features post-release.

Tuesday, December 13, 2016


Basically all the characters for my "clicker/idle" game is finished, with various poses and animations. I've become more efficient using Clip Studio Paint, easily able to do line work and fills with shading in a simple two layer process. It's an excellent program.

I have forced myself to attempt poses that have more energy compared to characters from my previous games.

Now, I can move onto the programming, before I work on all the less important art and interfaces. First, I am making programming and design changes to Gassy Goat, which I have delayed releasing because I was not satisfied with its design.

Zombie Guard has gotten a few patches on Google Play in the past month. That app has performed quite well and income through AdMob and in-app purchases is quite nice. The game is expected to reach half a million downloads in the coming months.

Saturday, October 1, 2016

"Go Idle"

I have settled on making an "idle game" for my fifteenth project. Idle games are gaining a lot of popularity these days. They tend to be very basic and straight forward, where progress is gained over a long period of time. Generally people can play for as little as five minutes a day, checking on progress, and setting course for progress over time. Optionally, players can gain progress more quickly by doing tedious tasks like clicking an object repeatedly.

Here are some heroes that offer more dynamic animated poses, compared to my usual character design.

Sunday, September 11, 2016

Adobe Animate CC and CocoonJS

Wow.. wow.. wow..! I downloaded the trial for the new Adobe Animate CC. Not only does it fully support HTML5, but it is fast. I took my HTML5 test project, uploaded it to CocoonJS and it spat out an Android APK app at full landscape resolution. It runs just fine at full frame rate.

In other words.. this is going to save me a lot of time. I can now create HTML5 web apps quickly, with the easy option to deploy to the mobile app stores.

It simply works.

Friday, September 9, 2016

Dug Up Concept

I stumbled upon some old concept ideas I had laying around. These were made a couple years ago using art mostly from Zombie Tactics.

It was a concept for a group based match-3 turn based game. It was never fully fleshed out. It may be a more decisive path over the slot machine mechanic that I blogged previously.

Zombie Guard for Android has given me a lot of confidence in the mobile market. It has earned more than all my other apps put together and the Google Play console is such a luxury compared to sponsorship licenses for web games.

I had this other design idea, a satirical one, where you control a guy grinding away to be the first to reach the maximum level in a fictional MMORPG called "The Ultimate Guild Lords of the Runic Realm World of Ever Eve". The name particularly combines words from many actual massive online games.

Gold farming, job, maintaining hygiene, hunger, comfort, money. Random events, upgrades, sleep. There are a lot of dynamics here. The leaderboard would have scores showing how little time it took to reach the goal within the fictional game.

The idea, was partly inspired by the South Park episode "Make Love, Not Warcraft", where the boys attempt to grind away in World of Warcraft, sacrificing their health and social opportunities in the real world, to advance their virtual selves to defeat the realm's greatest warrior... played as just some random guy with nothing else to do.

I believe a lot of gamers can relate to this game concept, of role playing as a gamer obsessed over a fictional one. I'll have to think more about this concept.

Monday, September 5, 2016

Slot Machine RPG

I want to share a conceptual image showing a preview of what could be my next, 15th game:

Which started as one of many crude sketches that depict a game screenshot:

I find being very sloppy with drawings can help explore ideas. There is a great sense of freedom and curiosity where a lot can be gained, without a great deal of time needing to be invested. I highly recommend people in any field, game development or not, listen to John Cleese's talk on how to be creative:

Currently I am what he describes as the "open mode" to allow ideas to come and go. I am still exploring possible ideas, before I go into the "closed mode" to produce those ideas without second guessing the foundation of my next game. Sure, little bits of details and gaps will be filled in later, but if I choose to go for a particular design then I must stick with it.

The idea shown in the first image above is a combination of slot machine mechanics in a fantasy environment, where the left side is the player's abilities and items. Single coins are used to spin the reel to gain resources (fire, water, etc), or, single coins are used with resources to use skills. There is an emphasis on luck. There will be random events and treasures to choose from, similar to actual slot machine games. The real heart of what will make it fun is the progression to strategically improve and craft your character over time with in-game currency.

This game could be incredibly fun, readily available for PC, Android, iOS, etc. I am still exploring some ideas before I fully settle on this idea...

Tuesday, August 30, 2016

Ludum Dare 36

One of the most valid reasons to take a break from a big game project is to endure a game jam, ranging from a day to a week. The theme for Ludum Dare 36 was announced as "Ancient Technology", which received almost two thousand entries.

I just so happened to have this weekend available (and the house to myself). I put my unannounced project to the side and eagerly waited on Twitter for the announcement of the theme. I decided to write the game in LiveScript using the Phaser engine, and Clip Studio Paint for the art.

So, here it is! Titled Vitruvian Man Goes To Heaven. The source code is available as well. The Vitruvian Man is a concept sketched by Leonardo Da Vinci of the ideal proportions of the human figure. The proportions in my reproduction are.. a tad less ideal. I incorporated many other reproductions of his other sketched inventions, such as the catapult, wings, parachute, tank, and helicopter. Michelangelo and the Sistine Chapel make an appearance as well.

The overall development was approached differently compared to how I normally do things. Normally I would create a prototype with placeholder art, focusing on design and programming first. This time I did not write any code until the second day, feeling fairly confident once I had all the assets. I did the art first because I could move the pieces around the canvas to help me figure out the details of the mechanics.

Sometimes it is easier just to create all the art, and then figure out how to utilize it. This approach has not always worked out for me. This time it did.

Here is a time lapse video that shows the overall process endured in the past few days.

The Good

I got to experiment with a new art style that I had been meaning to attempt.

The programming went smoothly. The game is playable in browsers, including my Android tablet and phone! It just simply works, dammit!.. Thank goodness for Web standards like HTML5. Oh, how I would much prefer to invest half my game jam hours attempting to build and digitally sign an iOS app with X-code while iTunes crashes a dozen times and uses half my RAM. All, only to find after 10 days, the app is rejected because it does not support some insane retina resolution display for newer iPads. Meanwhile iTunes uses the half of the RAM. And crashes.

I was a bit relaxed early in the jam. I even had time to take some of my red cayennes to the Shrewsbury flower show in the morning, which evidently won first prize in its category.

The photo and news of the blue ribbon came right when I submitted my game jam entry. Frankly, I was satisfied just being done with the game jam, so this was icing on the cake.

The Bad

The game itself is not very fun and even a bit creepy. It is way too linear without any usage of my specialty in game design: upgrades and progression. There is nothing to upgrade, so it is purely skill oriented. Initially the game had currency and a shop, but I had to drop it due to time constraints.

The Ugly

Me. During the game jam. I felt terrible during the second day of the competition. I ended up opting for the extra day, which makes my entry a 72 hour "jam" entry instead. Game jams can be really taxing on a person's body and mind, even with sufficient sleep because it may not be as restful, as the mind races under the pressure. The late night gin martini and habanero burrito must have acted as the catalyst leading up to my illness. It was delicious though. Likewise with the dark coffee the following morning. Okay, so hindsight is twenty twenty...

Tuesday, July 26, 2016

Art... and lots of it.

I have gone back to the study of art. My skill in human anatomy and gestures have been lacking. Also I'm looking to cease the vector art style that I have embraced for a long time. I want to do something very different that appeals to a smaller but more passionate audience.

I purchased Clip Studio Paint and I have been embracing it passionately. It is an incredibly powerful program that in some ways is better than Photoshop depending on your goals. It caters very well to comic art styles.

Animation will be carried out in the Spine program. In other words, it is likely I will put Flash on the shelf indefinitely, even as a tool for creating art assets for other engines.

Practicing in Clip Studio Paint with a semi vector-looking array of food.

Random portrait

Random pose. The arms need fixed.

Blue meth in the making.

Victorian Banshee with solid inking of shadows.

Demonic Marie Curie with similar style, but ink kept black.

Above are some random works during my recent studies. I want the art, animation, theme, and colors to convey an interesting experience in my next game. Something much darker with more substance through interesting characters and creatures.

Aside from that, I became curious to look into audio as well. I've pumped some voices through Audacity filters, changing them in eerie ways. Try this: reverse a clip, reverb it, and then reverse it back. It will sound ghastly. Just a few tips that like this can go a long way.

Saturday, July 2, 2016

Gassy Goat

Introducing my 14th game! This one, titled Gassy Goat, is my first launch/distance action game..! I am fairly happy with the look of the game, and so far the feel of it is improving through each play session.

Tech rambles...

Built on HTML5 using the Phaser engine, the game is playable on virtually any device through a web browser. I started the game earlier this year, and since then, I notice a lot more sponsors and existing ones supporting HTML5.

Many sponsors were gravitating towards Unity games, but that halted when Google Chrome disabled the plugin by default, forcing users to enable it through some arcane procedure. Thankfully, Unity has been working on WebGL support, so I may switch to that engine for my next project. After all, I tend to like dabbling in different tech, to keep things interesting.

I came to really like the LiveScript language, which I used exclusively to program Gassy Goat. I love the minimal syntax of that language. At the end of the day, it compiles out to JavaScript and is easy to debug in Chrome.

Enough of tech...

The game will be released hopefully within a month.

Now I can set my attention on exploring new ideas...

Thursday, April 7, 2016

Zombie Guard for Android

Recently I silently released Zombie Guard into the Google Play app store. Silently, because I wanted to issue one more patch based on the first couple thousand downloads before pushing it to the Apple app store.

The early few dozen reviews are excellent!

I am glad to have finished it. It is shaping to be my best mobile title. Cheers!

Tuesday, January 26, 2016

Art Dump 2

So far so good. The design continues to change as I create assets - arranging them on the screen, mixing and matching to come up with new possibilities. Each day I sit back and discard the art that did not come to fruition. There is a lot not shown in this screenshot:

The other approach would have been for me to write 95% of the code with placeholder art, which would have been replaced near the end. That approach... previously has not worked out well for me. I've come to prefer this approach instead. So much of the original design has improved during the past couple weeks.

Tuesday, January 19, 2016

Art Dump

Moving right along. 

I forced myself to try new approaches for creating the art, particularly taking advantage of the Pencil Tool in Flash for outlines on props and characters. I break the lines down into "shapes" to prevent them from glitching when I splotch shadows and highlights. Consequently, the outlines on objects are a lot smoother, compared to using the brush tool which gives inconsistent thickness.

This section down here at the bottom, is what you will see most of the time. The extent of the monkey's vine will be off screen.

Saturday, January 16, 2016

Onward to 2016!

Onward to 2016! While I find a potential publisher for Zombie Guard and issue patches about once a week, I look forward to this year. This blog post will serve as my resolutions for this year. Here are a few:
  • Fully develop six marketable games for any platform...! Excludes game jam entries.
  • Blog more frequently.
  • Become proficient in HTML5.
As I reflect on my previous experience as a developer, I have come to the conclusion that I greatly prefer smaller projects that involve less time from start to finish. Smaller than Zombie Guard (one year) and Last Town (four months)

Realistically to achieve six this year, I will have to average two months for each, taking into consideration the down-time between projects. This is actually a realistic goal. Defend Your Nuts, for example, was six weeks of development time and I have a lot more experience now.

Lately I got to evaluate all kinds of tech. I settled on Phaser for HTML5 browser games written in LiveScript - a language with particular syntax and features I have come to love love love! LiveScript is incredibly powerful and compiles instantly to JavaScript so it saves me a lot of time. Here is a screenshot of some preliminary code I wrote:

I find the LiveScript syntax to be very effective. Loops, array operations, and boiler plate JavaScript for classes is much easier to achieve.

Here is some example code from the LiveScript website:

Not only is it less effort to write, but is less overall code to digest at a glance. I actually do find operations like this:

[1 2 3] |> map (* 2) |> filter (> 3) |> fold1 (+)
To be intuitive. It takes an array of values (1,2,3), multiplies each by 2 into a new array (2,4,6), filters only values greater than 3 (4 and 6) into a new array, and then calculates the sum starting from the left to be 10 (4 + 6). Of course this is a very generic example. Frankly, I find it easier to understand at a glance, compared to dozens of lines of loops and ugly braces defining scope everywhere. It is a Currying functional style that I have always wanted to embrace, starting with my days, years back, exploring the purely functional language Haskell.

As for art, Adobe Flash will continue to be my preference, for animation and asset creation. I find it so efficient to scale and transform basic shapes, and add splotches of shadows and highlights. I started using the Pencil Tool for cleaner lines. Lately I have been fairly inspired by the minimal art style in Scribblenauts so I would like to mimic it for minor props and backgrounds.

Here is a preview of some of the assets for my next project:

I already wrote a Phaser template for this tool called Animo, which composites Flash movie clips into sprite atlases, better than other tools I evaluated. Animo is no longer found on the Web because seemingly the company went under, so I keep my full version copy safely.