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.