Friday, November 2, 2012

Week 10, Iterate!

As I may have mentioned before, for this prototype we decided to focus more on iteration than presentation.  I'm not entirely sure what that is going to mean for our presentation and I feel bad for AJ who has to present what we've accomplished to the Shoshone guys, but whatever.  It's a prototyping class, not a sell your half baked and barely duct taped together, but shiny game idea class.

Since our game idea is really just a collection of mini games tied together by a fairly basic overworld, we figured we could pick a couple mini game ideas and iterate on them.  This week I built two fairly different versions of a hunting mini game using completely different toolsets.  One is a Galaga style shooting game where buffalo (aka neon green rectangles) rush across the screen.  I made it using a javascript library called Crafty that has some fantastic game building blocks and pretty much no instructions on how to use them.  This caused a fun little bug to occur since I had to shit rig the collision detection.  If you manage to graze the head of the buffalo your arrow continues onward potentially allowing you to get a second kill or even third kill.  I like to think of it as multiple headshots.  It's not a bug, its a feature!

For the second iteration we decided we'd make aiming a little more challenging and a tad more like a real bow.  Now not only can you aim side to side by walking, but you must adjust your angle for distance.  Since the adjustments take more time we decided to keep the animals static this time around.  I wrote this version of the game in just straight HTML5 and I can safely say I hate it.  I take that back, I used JQuery for all my javascript needs, but I don't take back the hate it part.  It seems like the standard way to draw objects to the screen in HTML5 is with CSS, which makes sense because its designed for displaying websites.  Seems really cumbersome when you are trying to change CSS attributes dozens of times a second to animate stuff on a screen though.  I wonder if Crafty was doing something similar and just abstracting that away from me.  I'll have to peruse the source code.

Which brings me to another topic.  You can't hide your source code in HTML5 at all because everything you write has to be parsed and rendered by the browser.  Seems to mean everything you make is open source whether you want it to be or not.

Anyway, next week we're gonna get started on the Bear fighting mini game, hurrah!

No comments:

Post a Comment