Tuesday, March 20, 2018

Spaces in Time - Part 1: Time Rifts


If you have read any of my previous work, you'll know that I have a... "thing" for the 3D Platformer Collect-a-thon genre that was popular in the 90's.  These are the games that I grew up playing.  Last year we saw a good number of releases, most of which were met with mixed reviews (see Yooka-Laylee, Snake Pass, Freeze-Me).  There is one, however, that would surprise everyone and made it's way to being the 2nd highest rated game on Steam in 2017: A Hat in Time (referred to as "AHiT" from here on out).

For being the first game for the studio Gears for Breakfast, and the first game ever created by Jonas Kaerlev, there is so much that AHiT did right.  "Hat Kid", much like Mario on the Nintendo 64, is an absolute joy to control, with movements that were easy to learn and a bit difficult to master.  Badges could be purchased that manipulated gameplay in fun and interesting ways, like granting the player the ability to sprint or freeze time.

What astounded me the most, however, was the level design.  AHiT offers so much variety in it's spaces that I never grew tired of playing.  One moment you're at ease, exploring the open and inviting world of Mafia Town, and the next moment you're sneaking around on the Owl Express, gathering clues to track down a murderer.

I haven't been able to get this game out of my mind.  AHiT is a huge step towards what the modern 3D Platformer could become.  And seeing as it comes with it's own set of modding tools, I figured its high time I tried my hand at actually creating my own spaces to play in, rather than sitting around and critiquing the worlds that others have laid out for me.

Why Write This?

There is a fantastic opportunity here for me to expand my own design experiences and learn something new.  What better way to do this as a hobbyist than by modding a game I enjoy?  A Hat in Time offers it's own tool set for creating new levels, hats, skins, and other assets, all based in the Unreal 3 Development Kit.  Not only do I get the chance to design levels for a 3D Platformer, but I get to learn a new engine while I'm at it.

As I will be learning many things as I go, I figured it was a better idea to keep track of my progress through individual blog posts rather than one large essay, like I did with Yooka-Laylee.  I'll do my best to research particular aspects of AHiT's worlds as I attempt create my own, learning what ideas could work in practice and which don't.

Now then...

Time Rift Overview

The modding community over at the AHiT Discord strongly suggested that anyone just starting out with modding should take a look at the Time Rift template that can be used when starting afresh.  The template level is quite simple to work with; a small obstacle course with a spawn point, check point, time piece, a revolving platform and a couple of stationary platforms.

I bolded the term obstacle course in that last sentence because, in essence, that is what the most basic of the Time Rift levels often turn out to be.  There aren't any new move sets or concepts introduced in Time Rifts, they are meant to test the player's mastery of what they have learned so far.  The first two time rifts the player would typically come across are within Mafia Town (Sewers and Bazaar), neither of which require the use of additional hats or badges to complete. 

** Note, for the purpose of this particular post, I am focusing on the more basic rifts.  Purple (or cave) rifts, while similar in nature, have more complexities to them (collecting, narrative, sub-levels), so I will be saving those for another time.

Rather, they utilize Hat Kid's movement-based mechanics in interesting ways (wall climbing, diving, and of course running and jumping).  These time rifts aren't available right away - they only appear as the player progresses.  Looking once more at Mafia Town, the first time rift, Sewers, doesn't become available until after the player earns the time piece for "Down with the Mafia", the 4th act of the chapter, which provides the player with ample time and opportunities to learn and master that basic set of mechanics.

Time Rift Design

At their very base, platforming levels could be considered as string of obstacles or micro-challenges for the player to overcome.  The "Blue" Time Rift stages are a prime example of this, as each rift re-uses similar assets in new ways to put the player to the test.  There is only one objective (time piece at the end of the course), and, for the most part, the way to get there is fairly linear.  The first two rifts, featured in Mafia Town, take the average player about 1 minute to complete, and require nothing more than a firm understanding of Hat-Kid's base mechanics: running, jumping, climbing, dashing, etc.

"Bazaar".  You can see the variety of assets used in this level, and how they are grouped together to create individual challenges.

As the player progresses, however, mechanics that are introduced in a world are placed into their corresponding time-rifts.  The next pair of blue rifts the player would be expected to come across are in Battle of the Birds, both of which are a bit more complex than their Mafia Town counter parts.  "The Owl Express" uses the pressure-plate switches found in the Acts "Murder on the Owl Express" and "Train Rush" to create exploratory puzzles, while "The Moon" utilizes the band-following mechanic from "The Big Parade" and designs a level that discourages the player from taking the same route twice.

"Owl Express". Still a linear path to the finish, with switches and more complex structures introduced.


While creating a mod map doesn't necessarily require you to stick to the mechanics featured in particular Acts or Chapters, I've learned that simply focusing on a certain set of mechanics or a theme can often help with design direction, and give a more cohesive feeling to the level without throwing in too much.

When thinking of what sort of interactions I wanted in my own rift level, I was particularly fond of one set of actions: sliding, jumping, and ending on a grapple hook.  The idea of sliding made me think of ice, which in turn gave me a theme, "Mafia's Icebox".  I wanted to try to give the impression that the rift was taking place within an industrial refrigerator, without straying too far from the basic set of time rift blocks.  In the end I focused on the interaction with grapple hooks and slippery surfaces, doing what I could with Unreal Matinee and Kismet to create challenges around these concepts.  You could consider this both a bottom-up and a top-down approach to designing this level, as focusing on one set of interactions provided me with a theme to work with.

Ultimately, I wasn't looking to make a challenging level for the average player; I instead wanted to make a level that was more enjoyable and a little tricky to try to speed through.  In that mindset, the pathways ended up being extremely straight and linear, with only 4 hard turns until the goal was reached.

I do enjoy playing with the fog settings.

What has really become tricky is using materials and lighting to create the feel of ice and cold steel.  This is why there are individual jobs for lighting and environmental artists, neither positions of which I have much experience in...

The first iteration of this level re-used most assets at least twice:  
  • 2 sets of 3 rotating "ice cubes"
  • 2 sets of 3 rotating ice "pizza slices"
  • 2 sets of 2 rotating gears
  • 3 "slides"
  • 3 grapple-hook lifts
  • 1 static grapple hook point
While this helped to create the consistency I was looking for, it doesn't really have the right balance of variety to really keep the player on their toes as they progressed.  Simply increasing the speed that the gears would turn or changing the arrangement of platforms doesn't quite give the increasing sense of difficulty a linear level like this should.  I need to find a way to remix some of these obstacles to make the progression changes a bit more drastic...  Maybe add a few more static grapple hooks as a means of traversal.

Mid-Post Update

I had originally planned to complete this post and share it once the level was done.  However, during the process of designing this Rift and writing this post, Gears For Breakfast officially released the Modding Update for AHiT, and even started a $1000 mapping contest for the best Purple Rifts the community could offer.  This is an opportunity I am extremely excited about, and as much as I hate jumping ship in the middle of a project, I might have to make an exception for this one.  The contest goes until April 27, so after that point, I'll see about finishing this "Icebox Rift" and maybe write a reflection post about what I learned while creating my own Purple Rift.

See you in a month!

Monday, February 12, 2018

In Retrospect: Breakdown (and 2017)

I started off 2017 with one resolution: design and develop my own game, from start to finish.  After a lot of over-scoped projects and failed attempts at building consistent work habits, I finally finished my first game, Breakdown, on 12/21/2017.  It was much smaller than what I had originally pictured at the start of the year, but it was a complete game nonetheless, and solidified my passion for game design and development.

Breakdown could easily be summed up as the illegitimate child of Pong and Breakout.  There's isn't anything too spectacular or ground-breaking about it's design.  With that in mind, this retrospective post wont really focus much on the game itself, but of the lessons I learned during it's development and the effect it has had on me.  In many ways, the effort I put into getting one game published by the end of the year helped me to develop some healthy work  and creative habits, especially considering that I'm currently developing games as a hobby while I work full-time as an engineer.

Pen & Paper

The most important habit I developed over the last few years was carrying around a notebook for ideas and for free writing.  What became difficult, however, was keeping pen and paper with me at all times.  I wish I could recall what sparked the inspiration for Breakdown, but I remember it came to me during a party at a friend's house.  After the idea stewed in my head for a few minutes, I had to scramble around for something to write it down onto.  My friend had provided me with a pen and a small piece of cardboard - I believe it might have been the top of a Cheeze-It box or something.  The important thing was, I had it down, and it was now sitting in my pocket.

But I didn't only use my notebook for ideas.  I'm a bit embarrassed to admit that my brain had trouble keeping track of certain bits of the game logic, most notably collisions.  Having this visual representation helped keep me on track much more than I expected it would.  In short, when in doubt, draw it out.


You can read a lot online about daily routines that developers picked up in order to keep themselves motivated on their work.  Some people would attempt a minimum of 20 minutes a day on their projects, no matter what task you performed.  Others would look to set up deadlines for each step of their game, keeping lists and dates to push themselves to stay on track.

These are all great practices, but the truth is, there isn't one sure-fire ritual that works for everyone.  I had attempted many of these practices myself over the course of 2017, but between the unpredictable nature of my day-to-day life, and the lack of energy I had after work, none of them proved to be successful.  I eventually read a comment to a post on Reddit, from someone who had been in a similar situation as myself.  The suggestion was to simply wake up an hour earlier in the morning, and dedicate this time to development before getting ready for work.  It turns out that my brain was much more fresh at 5:00 a.m., and there were many mornings where I could go into work with a sense of accomplishment from what I had already managed to complete from my personal projects at home.

The key lesson I learned (maybe still struggling to learn) is the consistency of a ritual. Obviously, a ritual isn't a ritual if you don't do it ritually.  There were several development phases I hit that were less fun then others; that's expected.  But the key thing was that I didn't stop waking up early to work on the game when thing's weren't as fun as they were the week prior.  Some days I made less progress than others, sometimes I wouldn't make progress at all.  But keeping the vision of this completed game in my mind, sharing my progress with others, and keeping the hard deadline of December 31st helped me to stay motivated and see Breakdown through to the end.  

Scope, Cutting Content

This one was a bit harder for me, but it was an important lesson, and one every developer learns at one point or another.  Somewhere down the line, you are going to end up cutting features from your game that you were once certain would be a part of the final product.  There could be a number of reasons for this, but in my case, it was simply a lack of time.  I had originally planned to have features like a leader board, increased speed for paddles as they decreased in size, and more complicated physics overall.  Much of development involved learning new concepts and practices, every new feature becoming another google search, and thus becoming an even greater time sink.  Luckily, it turned out that finishing the game without some of those features not only made the project easier for me to digest as a developer, but even easier so for a player to digest when playing.  

Of course, the beauty of creating games in the internet age is the fact that I can simply add on those features and update the cart.  However, I chose to prioritize a completed game over a feature-rich one that may have never seen the light of day, and I'm more than happy with the result.  With this being "my first game", having some more of those complex systems would have greatly extended the dev time, and I would have no doubt lost interest in the game with the additional walls I could have potentially run into.

Consequently, at the time of writing this, there is a post on Reddit that offers a list of what NOT to have in your first game.  Kind of wish this was around when I had started off...

Get Involved

In January of 2017 I made the decision to skip a class and attend one of the early meetings of the Video Game Development Association.  I walked in late, much to my embarrassment, but after the meeting, I was greeted by the club administration and joined the Design team.  Getting my name in the credits of my first project as "Gameplay Designer" was such a great feeling, and seeing something in the Google Play store that I helped make was an even better one. Even after graduation, I've been continuing to attend meetings and contributing to the games the students put together.

Not Pictured: Me.  Having a full-time job unfortunately meant I would be absent from such gatherings.

The best thing that has come out of this experience, however, was the camaraderie among aspiring developers.  Each of us are consciously aware that we're here to learn, and that allows us to find the potential within ourselves and each other.  I've made several friends since joining this group, and we continue to build great things together even when the semester is over.  It's completely possible to do the solo game-dev thing, but joining a team of like-minded individuals proved to be most beneficial for a developer just starting out.  And, of course, it gives you the experience of working within a team towards a creative vision.

I set out to finish one game by the end of 2017.  Thanks to VGDA, I had the opportunity to work on 3 additional games that were completed and published last year.

Get it Out There!

I don't typically take a lot of pride in my work or accomplishments (just ask any one of my friends or family members).  I'm typically plagued by this idea that whatever I create, whatever idea I come up with, there is always someone out there who did it first, and has done it better than I ever could.  It's a mindset I still fight with from time to time.

Ultimately, your ideas and creations are worth sharing, even if you feel they're not your best work.  Two things can happen: you could receive compliments, which might encourage you to make more or improve, or you could receive criticisms, which, if handled properly, could still encourage you to make more and improve.

Breakdown won't make me any money, and I could probably count the number of people who played it with my fingers.  But someone else played it, and someone else liked it, and that was more than enough for me to keep this hobby up.  As I go into 2018, I'll be actively searching for new things to try and new things to learn.

Saturday, November 11, 2017

In Retrospect: Voodoo Cheval (Part 2)

The previous post left off with the re-introduction of snakes in Wave 6 of level one, so we'll pick up from there.

Wave 6

The snakes are significantly faster than zombies, and paired with their capability to split in two should the player make a wrong move, they prove to be a significant challenge when tossed into the spawn wave mix.  

Up until this point, the player has been able to get by with just drawing circles of various sizes on the screen, fighting off larger and larger hordes of zombies.  With the addition of snakes, I wanted to keep a similar pace to what has been developed so far without having to place a large emphasis on a new enemy type, hence why two snakes were placed in this wave, along with 4 zombies.  

As snakes appear first on the screen, it gives the player a moment or two to process what they are seeing and try to recall where they had seen it before.  This was, in hindsight, the wrong way to go about it.  Snakes should have been a part of the mix from the beginning, considering we introduce them so early on in the experience.  This could have even further prevented the use of the exploit (discussed in the last post) from the beginning, keeping it from even being called an "exploit" in the first place.

Thankfully, if they fail to react and kill the snakes in time, we have placed a check point here to avoid the frustration of starting over at Wave 1.

Wave 7

A bit of a throwback to the lesson I was aiming to teach in Wave 2, with the single, large grouping of zombies.  This wave, an arrangement of 8 snakes that were split into 2 straight lines, were meant to suggest visually that the player could chain together multiple snake kills with a single drawn line.  Two lines of snakes were used instead of one to, again, avoid slowing down the pace too much when introducing a (possibly) new idea.

Waves 8-10

More practice in iteration, applying concepts I attempted to develop since Wave 1.  Overall, I'm pretty happy with the way these placements turned out, they strike an odd balance between symmetrical and random.  Enemies are, for the most part, consistently pouring in from every direction into the screen, without favoring a particular side.  This keeps the player actively analyzing the entire scene, making quick decisions as to which enemy to take out first.

Wave 11

The last enemy that gets introduced in Level 1, the "Demon".  The demon comprised of 3 possesed skulls, all chained together by magic.  The idea was that to defeat the skulls, you would have to trace the chain that connected them.  Sometimes, this suggestion would be a little more vague than others (see above screenshot). 

This was a bit of an odd one to work with, as his prefab asset was designed to randomly place him on the map, with the skulls placed in a somewhat random arrangement up to a certain distance from one another.  Originally, we had aimed to have 10 waves in total for Level 1, but somewhere during development of the other levels, it was decided that the demon should be introduced earlier in the game.  I don't recall if we even had discussions of offering the demon a tutorial like we did the zombie and the demon...  But I liked the idea of giving him his own wave, and letting the player figure out how to defeat him.  The chains, being connected in straight lines, should have (hopefully) suggested what action to take.

Waves 12-15

The last set of iterative levels.  Now that I have played through the whole game a few times, these last few felt anti-climactic... I'm unsure as to why this ended up being the case, but the only thing that I can recall was worrying about the integration of the random demon spawn with the rest of the enemy placements.  Placing that asset required thought and timing in relation to when the other enemies would appear on screen; I didn't want to run into the situation where the player was unfairly overwhelmed.

I am pleased to see that, for the most part, I remained consistent in applying the concepts from earlier parts of the level (varying sizes of zombie hordes, grouping of snake-lines), as it certainly added variety to my input actions.  The game never quite felt stagnant, the only change between waves that I could feel upon re-playing the game was a rise and fall in flow .


"Voodoo Cheval" has it's flaws, but as "my first shipped title", and my time working with a large team on one project, I enjoyed the experience and am rather proud of the final result.  Joining VGDA made me a few friends, but I also got the opportunity to learn a lot of development practices and concepts first hand.  These lessons may seem obvious to you as a seasoned developer; they're obvious to me now even with only a year or two of experience under my belt.  But these lessons were important nonetheless, and sometimes the only way you will learn them is the hard way:
  • Play-test early, play-test often, play-test with everyone.
    • It's obviously important to play test your game frequently and thoroughly, but it's also important to try to play with a mindset of someone who has never seen your game before.  This is the job of the average QA tester, someone who will dive into a game and try to break all of the rules; accounting for every possible thing that could go wrong or could be done differently than what the designer anticipates (see 'The Exploit' in part 1).  This could yield better results in the long run when you take your game to external play-testing.
    • Play-testing the whole game (or level, in my case) sounds exhausting, and I'm pretty certain I had my aversions to the idea during development (even though my part of the game lasted only 5 or 7 minutes...).  But it's truly the only way to really gauge the difficulty curve of the experience as a whole.
  • Look outward for inspiration.
    • Something I realized looking back at this development process was that I never ventured outside of Voodoo's bubble to gather inspiration on how to approach the spawn-wave design.  I would often try to sketch waves on paper and try to determine the best way to use the pieces at hand, or simply drop assets into Unity and adjust their locations until I had a wave that simply "felt good".  Now that I have a few other projects under-way, I am constantly doing research and looking for inspiration to better the game-play experience overall.  I can't help but wonder how different this level could have been if I had put that into practice earlier.
  • Open and constant communication.
    • This wasn't a lesson so much learned as much as emphasized.  As a college student, working on a game part-time with a club, your priorities shift often.  Class work builds up, exams get brutal, and tasks that you either aren't payed for or graded on will get pushed aside.  Communication in this kind of situation is huge if a project is going to see completion by a deadline, as assigned tasks that you might not be able to complete can be handed off to someone else.  As VGDA did it's best to mimic an Agile environment, there were several techniques and tools that I had to become familiar with, like Trello or weekly Scrums, that assisted in keeping communication open and updates constant.
Overall, as small of a game as Voodoo Cheval is, my time developing it was worthwhile.  I've since continued working with VGDA on our next title, and I can't wait to see what challenges we overcome together.

Friday, November 10, 2017

In Retrospect: Voodoo Cheval (Part 1)

During a QA session with some of the recruiters at Blizzard, it was brought to my attention the importance of maintaining documentation for your design and development process.  While I reviewed the documents I had made for previous projects, I had the idea of making a collection of blog posts that review particular challenges or struggles that I encountered and what my solutions to them would be.  Looking back at my experience in this way, I hope, will help to shed some light on things that may have gone right, as well as things that I could have done differently.  Consider these posts to be bite-size post-mortems.

Voodoo Cheval is the first (and at the time of writing, the only) game that I have worked on that has been published onto a distribution platform.  If you are unfamiliar with the title, it is an action game intended for mobile devices, where the player is tasked with defending their beloved horse from an onslaught of zombies, snakes, and other monsters by drawing particular shapes on the screen to destroy them. 

I was brought onto the project rather early in development, signing up for a role that sat between design and programming, but leaning more towards the design end of things.  The team, like myself, were all full-time and part-time students of California State University, Long Beach, who had banded together to form the Video Game Development Association (or VGDA, as I will refer to it from now on).  What I found so brilliant about this opportunity was that very fact; we were all students.  We all had coursework to worry about, jobs to help pay for rent and tuition, very little free time, and a huge passion for video games.

The team was fairly large in scale, and with each of us only being able to contribute so much time each week to development, tasks were divided into smaller, more manageable pieces.  While I had the opportunity to work with other students designing systems, namely enemy behavior and player controls, the bulk of my work was in designing Level 1; an open setting where 3 types of enemies would appear on the screen in waves.  By the end of development, there were 15 waves in total, each with it's own purposeful design with the aim losing the player within "the magic circle".


Upon starting the game from the main menu, the player is met with a very brief and simplistic "scripted tutorial" scene, where the player is met 2 types of enemies that they will see throughout the remainder of the game.

Although this tutorial was not of my own design (will give credit when I find out who exactly built it), it had a large influence over how I built the rest of the introductory stages.  The goal was to make the tutorial completely interactive, without hindering the start of a play session too much.  As the enemies approach the horse on screen, the player will have the opportunity to defeat these enemies in the usual fashion, but if they do not know what to do, the snake and the zombie will pause, staying frozen in place before they can cause any harm.  When they freeze, the spell effect (usually visible on the screen when touch input is detected) is animated to suggest what action to take, almost in a "monkey-see monkey-do" kind of way.

No pop-up windows, no invasive companions to say "Hey! Check this out!".  Just a simple suggestive animation paired with a brief safety buffer before the game really begins.  For a new player, this brief encounter establishes the foothold that the following enemy spawn waves will build upon.

Wave 1

Looking back on it, I'm pretty sure I over-thought some of these enemy placements...  It was clarified before I started that enemy spawn would not be random, but placed.  With replay-ability being a concern, I felt it best to keep these placements a little on the unpredictable side.  Hence, this asymmetrical placement of the first two zombies.  An easy win, but it also should have served as an indicator that, from this point forward, there will never be just one of these guys on the screen at a time.

Wave 2

The idea behind this wave was to re-enforce an idea that might not have been obvious to every player: the fact that you can kill more than one enemy with the same attack.  Even if you attempted to draw a circle around a single zombie in this grouping, you are bound to rope in another one with how close together they are.  This was also meant to establish the idea that the size of the shapes you will draw can vary, which we will find out later can either help or harm you immensely.

Waves 3, 4, and 5

The third wave was intended to push the player to use the different sizes of circles that were demonstrated between waves 1 and 2.  The zombies on the left and right are the first to appear, and they are spaced relatively far apart.  It would be fairly easy to circle each one individually or circle them both together.  The grouping at the top of the screen comes shortly after, a little more tightly knit together, and finally there's the big grouping at the bottom, appearing slightly behind the grouping at the top.  

At this point, the player may start to feel a little frantic, drawing circles around zombies the second they pop onto the screen.  But if they are patient, they may be able to see that by allowing the zombies to draw in closer, they can draw one big circle to take them all out at once.

Unfortunately, we never implemented any sort of reward system for combo kills.  Something that would have made this design process a little more meaningful.

Wave 4, shown below, tries to make that idea of the risk and reward of patience a little more obvious, having the zombies enter the screen in the form of an actual circle.

In hindsight, it might have made more sense to swap Waves 3 and 4 to make this point, but I think it also works in regards to replay-ability.  Now that you are fully aware of how this kind of strategy could pay off, you might want to play through it again and see how many zombies you could kill with a single drawn circle.  An unexpected issue that this design may have contributed to, however, is the discovery of an exploit that many players would try to abuse,which I will discuss shortly.

Wave 5 was simply a zombie rush, with assets placed in various positions in an attempt to establish rhythm, but while avoiding predictability.  Designing waves like this one (there are many others in Level 1) was simply an iterative process, where I would place the zombies in various positions and re-position them until the wave felt like it could hold a "flow"; not too challenging, but not to boring either.

The Exploit

Something that become apparent to us rather quickly during play testing was the fact that the player could, in fact, draw circles big enough to wrap around the whole screen, if they were quick enough to make the  beginning and ending points of the line connect.  I don't quite recall at what point or which wave that play-testers would come to this realization, but I'm pretty sure it was around waves 3 or 4.

When a discovery like this one is made this early on, it makes the "strategic placement" of enemies essentially moot.  Even more unfortunate, the team never got around to properly addressing and fixing the issue.
A (rather poor) demonstration of the exploit being used in Wave 3.

Looking back, there are a few reasons I can think of as to why this wasn't fixed.  One is the deadline; as students, the goal was to make one small game over the course of a semester, all the way up to the week of final exams.  While we did do a fair amount of internal play-testing, this issue wasn't really brought to our attention until we had students from other colleges play the game at the Student Game Developers Alliance Summit in May, not long before our deadline.  At this point in time, we were no doubt scrambling to get bugs fixed and the final art assets in place, which ultimately still resulted in a cohesive experience we were all proud of by the end of development.

Another reason that comes to mind is how ineffective this strategy becomes after Wave 5, as snakes are re-introduced for the first time since the tutorial.

Something that might not have been made clear in the tutorial is this particular trait about snakes:  if you accidentally draw a circle around them, they "split", and form two smaller snakes that the player now has to deal with.  If the player were to simply sit there and spam large circles on the screen, without paying attention, they would be overrun within moments.

I recall at the time feeling that this enemy design would counteract the exploit so easily that it would be abandoned after Wave 6, which could also be how the rest of the team felt when the exploit was discovered.  In either case, it taught me to try to play-test my own work from a perspective of someone who doesn't know what to expect.  This seems so obvious to me now, after reading books and articles on bug testing or human centered design, but as this was one of my earliest projects, I'm willing to forgive myself and move on.

Thursday, September 28, 2017

Star Fox 2 Reviews - A Question of Context?

The Super Nintendo was a console I skipped as a child, much to my dismay.  My older brother had the N.E.S., where I would be allowed to play Super Mario Bros, Duck Hunt, or Rush'n Attack (my favorites, from what I can remember) for upwards of 20 minutes a day while I was in grade school.  That system was all I needed, and at that age, I had no real concept or interest in the game industry at large.  Ignorance was bliss.

Some years down the line, my brother received the Nintendo 64 as a Christmas gift; the console that would define my childhood.  I had dumped numerous hours into Super Mario 64, Banjo Kazooie, and Pokemon Stadium (having been permitted more than my 20 min allowance by this time).  But one game that my friends and I would constantly play and discuss at the schoolyard was Star Fox 64.  We were not only amazed by the diversity of it's levels and the numerous pathways you could take to the end of the game, but the 3D graphics and effects in play at any given moment made you feel as if you were a part of some big-budget, sci-fi action movie.

That was back in '97 or '98.

I can still play these games today and have an enjoyable experience.  You could pin it down good design or just nostalgia, but it is very rare that I pick up and replay a game for it's graphic fidelity.  It's more common to hear the phrase "these graphics haven't aged well..."

The thing is, these games pushed limits that are simply irrelevant today.  Computing has leapfrogged into an age where photo-realism in a virtual environment is not unheard of.  This, of course, has had an incredible influence over the manner in which games are critiqued in this day and age.  Games are rated typically based upon what other options are available in the market place at the time of release.

This lead me to asking the question:  "Can we even justify rating Star Fox 2?"

Star Fox 2 was, as you might guess, the sequel to Star Fox, originally released on the Super Nintendo.  It was cancelled due to the imminent release of the Nintendo 64 in 1996, a console whose aim was to completely re-invent the way 3D graphics are handled in video games.   Having such a grand appreciation for the impact Star Fox 64 had on my childhood, I was of course surprised and excited to hear the news SF2 would see an official release, as a game included with the SNES Classic Mini.  As I understand it, the developers themselves shared this surprise and excitement even more-so.

Courtesy of  Hidetaka "Swery" Suehiro's twitter.
The original installment of the series utilized the processing power of the SNES to create 3D effects that stunned gamers and critics alike.  The "Electronic Games" magazine had this to say about these visual aesthetics back in 1993:

"The SFX chip is the heart and souls of this great new shooter.  Designed in England by Argonaut Software, the chip manages to accelerate polygon graphics to the point of smooth animation.  Without the help of this special chip built into the cartridge, the Super Nintendo would not be able to independently create the eye-popping visuals in StarFox."
It is worth noting that at the time of release, StarFox received a rating of 95% from this publication.

This is the kind of vocabulary we see with every new generation of gaming.  It's very rare to see gaming journalists look back at the previous generations of consoles and re-evaluate their use of the platform, because for the most part, the games of the past are irrelevant.  You're comparing apples to oranges.  So why has this changed with regards to Star Fox 2?  Why are we seeing modern-day reviews for a game that was intended for a console produced 27 years ago?

For the most part, it could simply be due to the fact that Nintendo themselves has decided to publish it.  Recently, there has been a movement to preserve electronic games and their assets by dedicated fans and historians.  Every so often, prototypes for unreleased games will surface, like the Nintendo 64 version of "40 Winks", and it raises discussion.  Not so much regarding the quality of the game, but more to the circumstances surrounding it's cancellation.  Releasing a previously cancelled game could almost be compared to the uncovering of such a prototype, but as Nintendo sought to ensure the game was in a completed and playable state, and included it in the highly demanded SNES Mini Classic, some are treating it as an official release like every other game.

While I find this reasoning to be completely justified, the mentality of which the game is critiqued should be adjusted to fit the context.  At the time of writing this post, there are few reviews published for SF2, but the review from IGN is glaring me in the face with every google search.

"totally 90s moments"

The reviewer's argument here is primarily based upon SF2's "primitive 3D" graphics, which are described as "jarringly bad".

"But if you can stomach the terrible frame rate, it is playable – enough that I could beat it on Hard. Sometimes, it’s even enjoyable."
Oof, hitting the frame-rate.  A sore spot for all modern gamers.

This sort of argument, if you take gaming history into consideration, is not one that should really even be made.  The original Star Fox, from my limited research (forum users on various retro-gaming/homebrew sites), ran at approximately 19 frames per second, where as most Nintendo 64 games would still run below today's standard of 30, hovering closer to 20 frames per second.  Unfortunately (or fortunately, depending on your stance on emulation), Nintendo emulates games on the SNES Mini with a focus on accuracy rather than performance (according to reviewers), so the argument still stands that criticism should be approached with dated processing power in mind.

Thankfully, the second half of the review does spend some quality time discussing the systems design of the game.  Star Fox 2 adds the capability of the player to choose a second wing-man, each with their own special abilities, to accompany you through each stage, serving as a second life should you get shot down.  The sequel also introduces a "real-time strategy-like frame" that "puts pressure on you at every moment."  From a game-play standpoint, it sounds like a lot of fun.

The point being, though, is the idea of reviewing a game like this is almost unfair.  Star Fox 2 is a game out of it's time, one that might have been considered a gem of the SNES generation had it released back then.  It's quite a blessing that the game was able to see the light of day at all, and that we can still experience something new on a console that many gamers hold dear.  Just don't expect it to be the action-packed visual feast that you might have experienced you were younger.

Sunday, September 17, 2017

Essay: World Building in Video Games

In an attempt to better my writing skills, I've written another essay, a bit longer than my previous work.  This one takes a brief look at the practice of "world building", and how complete immersion into a fantastical universe can be accomplished through the interactive design of video games.  As always, feedback is encouraged.  

Below is an excerpt from the opening paragraphs:

"If you are already well versed in works based in science fiction or fantasy, you may already have a good understanding of the practice of world building.  However, for the sake of clarity, allow me to do a brief recap of some of the basics. A quick google search for "world building definition" offers some very straight-forward results: "World-building is the process of constructing a fictional universe."[1], "The process of constructing an imaginary world."[2], or "The process of creating worlds for use in a fictional tale."[3]. World-building means building worlds. I'm glad we got that sorted out.

What if we broke down this term a little more? The definition of "building" seems a little obvious here, yet looking up the term "world" in the Merriam-Webster Dictionary provides an interesting variety of definitions, one of the more notable of these being "the system of created things"[4]. Given some thought, this seemingly vague and broad definition may actually make the most sense, as the world we live in is more than just the people we meet and the ground under our feet. We have sets of laws (physics, nature, gravity, etc.) that keep the world turning. Most everything has some underlying logic that doesn't quite make sense until it is placed with context. The earth has a rich, diverse history of it's own that can seem almost unreal when considered today; Try to imagine dinosaurs roaming the outskirts of Columbus, Ohio[5], or California at the bottom of the ocean[6].

The history of the earth, paired with these "systems" that are in place, sets the stage for each and every one of our modern-day adventures. We aren't necessarily aware of these systems at all times, but they guide each and every one of our actions. Therefore, it makes absolute sense that artists, writers, directors, and game developers would go to great lengths to create a detailed world outside of our own, with its own rules and history, to better immerse the audience into their stories; a "second world". But just how exactly is this accomplished?"

Wednesday, May 17, 2017

Essay: A Study of Spaces in Yooka-Laylee

I've written a small essay analyzing the spaces and level design of Yooka-Laylee.  I have anticipated this game since it's Kickstarter announcement, and felt that this is a good opportunity to practice writing about some concepts of design that I have been studying about lately.  I'm looking to grow in my wiritng ability, so as usual, feedback is encouraged.

Below is an excerpt from the opening paragraphs:

"Yooka-Laylee, and other games that fall under the Free-Range Platforming genre, appeal to gamers who like to explore, discover, and interact within an interesting 3D space.  While the game mechanics are important to the impression the player has over their experience, creating a space that places the player in a state of flow is just as important, if not more-so.  Everything down to the tactile interaction the player has with the objects placed around them assists in creating a memorable and enjoyable experience.  It is in the expansion of these virtual spaces that we often see a change between generations of gaming, as an increase in memory and processing power allows for bigger and more interactive worlds to explore.  To create a world that in non-linear, but also naturally guides and encourages the player to take specific actions is a challenge indeed, and I hope to get a firm grasp on how 3D level design should be done for my own work in the future."