Skip to content

about-face : a post-mortem

It’s weird to go back to writing about smaller games, but refreshing.  As small as about-face was, it is a “finished” game (in quotations because I still have a patch that isn’t live yet).  Finishing things is pretty important – I don’t think it’s actually the most important thing, but it’s really high up there.  And every time you finish something, you usually learn some stuff, because it is one of the primary ways of getting feedback.  So, what have I learned this time around?


What went right

It’s always nice to start with the positive.  I think some things went well with about-face that are worth mentioning.

1. Scope was controlled

about-face never expanded in scope – there were some things that weren’t part of the original idea that made it in, but they didn’t lengthen the game’s development significantly.  There were huge delays in the game’s development, but more due to personal interruptions, losing focus and switching to different projects.

2. The mechanic worked

General feedback has been that people have had fun with the game and often play it to completion.  It isn’t a long game, but the mechanic was interesting enough to hold peoples’ attention and was a strong motivator for people to finish it.

The idea was to take a very simple mechanic that still had a lot of space to explore, and that didn’t require lots of other sub-mechanics to make it interesting.  This made the game very fun to design as well, because I was able to be laser-focused on that one concept and make everything around it.

3. The art/sound/motif worked

about-face palette

The game’s entire palette.

I wasn’t sure how people would receive the style of the game.  From a production standpoint, this game definitely isn’t my most ambitious work.  The game mechanics, art, and sound are all very minimal, and I wouldn’t have been surprised if that was counted against it.  Luckily though, people have appreciated it for what it is.

What went not right

1. The ending

I think this is a weakness of mine, because for pretty much every game I’ve made the ending has not been received as anticipated, for better or for worse.  In this case, some people were not even sure if the ending of about-face was actually the ending or not.  Granted some people liked what I did, but when something creates unintentional confusion that’s always a failure in design.  There are parts of the game that I had envisioned as cues for the game’s ending – the final areas of the game take a step back from the mechanics earlier in the game, and serve more as spectacles than anything else – to me, this was the game gearing up for an ending, but none of this was backed up by any other cues in the game.

I think ultimately, I made a lot of assumptions regarding what people would be thinking as they were completing the game, which turned out to be wrong!  I need to spend as much time with narrative cues as I do with the rest of the game’s design.

2. The resolution

This is a weird one.  The game was meant to be a pretty small resolution to complement the simple visuals, but what I ended up with was uncomfortably small and kind of a pain to look at.  The weird thing is that part of this is because my IDE was actually displaying the game at a larger resolution than I had configured and applying AA (despite my attempts to hard-code no-AA settings), so 99% of the time I spent playing/testing the game was with a larger resolution than it would be in reality.  This is particularly annoying, because without using AA, the only way to make the game larger is to just scale everything up 2X, which is unfortunately a bit too large.  So, the only real fix is to change the game’s aspect ratio, without messing up the gameplay by making the player’s vision too small.

I guess the take-away here would be to try the game out more on the actual platform it’s being played on, and not just in the dev environment.

3. The controls

Some of the feedback was on the game being too slippery, and the gravity being way too high.  The former was easy to fix, but the latter is tricky because all of the levels are designed around the player having a specific jump height/speed.  So obviously, changing the player’s physics can have consequences on level design.

These are pretty big deals, because moving left/right/jumping encompass all of the player’s controls.  If those aren’t on point, there’s a problem with the core of the game.  Ideally, I would identify any dependencies the game has – in this case, how the level design is very closely tied to the way the player controls – and get early feedback on those elements before they’ve become fleshed out.  In this case, the problem wouldn’t have been a problem at all if I had identified that gravity was too high before I designed and iterated through all of the levels.

Back, forth, back, forth

Yesterday morning I did the seemingly impossible – I finished one of those games I mentioned earlier!  In fact, it was largely because of the “Odds and Ends” posts I made a little while back, that I was reminded of how close I was to completion on some of those projects.  It made it harder to justify leaving them alone.

I added a bit more content to about-face, polished some issues around the edges, added some extra sound and tweaked the levels, and now it’s live on Newgrounds!

GameImage

The game’s logo, one place where I break resolution.  The horror!

And there it will stay for a while.  I guess it’s sort of an unofficial limited-time exclusivity for Newgrounds, because I like the site…well, a flash game can never be truly exclusive, even when site-locked…but the point is I like uploading stuff there first, okay?  It also gives me time to gather user-feedback and adjust the game accordingly before I put it in other places.  After all, it’s easier to make 10 small changes in one place than 10 small changes in 10 places.

My plans for the game are extremely small, as it was a game I made for fun (and anyway I don’t have faith in how much traffic a flash game can pull these days).  I’ll make some changes to the game as needed, and then move on.  It’s not my most ambitious project, and as my previous posts have indicated, I have a couple other things that I’d like to continue working on!

Thankfully, people have largely enjoyed the game for what it is, and it’s sitting around 3.5+ stars at the moment which is about as much as I could ask for.  It feels really nice to put a smaller game out to the public and be getting more user feedback, and I’m glad I decided to finish this game before continuing on other projects.

I definitely learned some things through development/release of this small game, which might be worth writing up in a bite-sized post-mortem.

I could also talk about the message/theme of the game, but really, the whole point is minimalism, so it would be more fitting to let the game speak for itself on that matter.

Reflections on story/characters in “At Sea”

For a while I’ve wanted to post some reflections on the characters/story of At Sea: or more accurately, reflections on how players have reacted to different parts of the game.  It seems a bit weird to be writing about a game that I’ve released over a year ago, but the fact is it is still my largest released project to date, and chances are if you’re reading this, it’s because you saw Why Am I Dead At Sea somewhere!

Some of this might be interesting to those who have played the game all the way through.  Certain things that were intended but may not have been communicated to the player, remaining questions the player may have after finishing the game, and random musings.


NOTE, if you haven’t played the game yet, this will have SPOILERS so you should not read it if you care about that kind of thing.  I will “white out” some of the big stuff (select the text to see it) but the entire game consists of twists/reveals, so talking about the story in any capacity will contain spoilers.


1. People really don’t like Xu, huh?

One thing that I feel like I could have done better with was making Xu a more sympathetic character.  Watching people play the game, a lot of people really dislike her, I mean, a lot, and that wasn’t exactly what I was anticipating.

I mean, she’s not what I would call a great person.  Even in the very first conversation you have with her, there are clear hints that she is being deceptive/manipulative.  But the game’s overall opinion of her is meant to be roughly neutral – she has flaws, but is ultimately a good person.  Unfortunately, I don’t think her dialogue depicts this side of her as well as it could have.

Reflections1

2. Alton hogs the early parts of the game, and was the hardest character to write

I’ve seen players grow weary of him and his character-arc, which is understandable.  To progress through earlier parts of the game, you have to spend a lot of time with him.  Personally, this is my least favorite aspect of the game from a narrative perspective.

In general, Alton has been the most difficult character to write, and his personality/story arc have gone through multiple dramatic changes over the game’s development.  Originally, Alton came off as a much worse person in the script, and reacted quite differently to certain events in the story (for the worse).  The initial conflict between him and Xu was meant to be, essentially, a re-enactment of the game’s larger conflicts/themes, on a very tiny stage.  But conveying all of this was difficult, because Alton is the first character you meet and play as, and is sort of the tutorial character.  He also seems like an okay person at the beginning – he has flaws, but they are flaws often given to an “underdog” protagonist.

So I was very worried that players would falsely interpret Alton as the underdog protagonist, and that his opinions were those of my own, or the game’s.  I ended up rewriting a lot of his dialogue to reduce the chance that he would be interpreted this way.  This ultimately made his dialogue less substantive – he simply has a lot less interesting things to say.

3. People wanted to know more about the protagonist (ie the ghost)

A common complaint is the lack of closure on just who exactly you are.  This is half-intentional, but something that I could definitely improve on.  There are obvious challenges – you are dead, you have lost all memory of your past self, and the other characters in the story didn’t know much about you even when you were alive.  So, opportunities for character-development are scarce.  One option would have been flash-backs as you recover pieces of your memory, but this was outside the scope of the game.  It could also disrupt the focus of the game – ultimately, the protagonist is not supposed to be the center of attention – that place is reserved to the cast of the living.

Reflections2.png

Okay.  That’s cool…I guess…

I will say that the ghost does have a full back-story and character – it’s not for lack of these things that the ghost’s former personality is vague.  It was more of a conscious decision not to go too far into those details.  But there is something in-game that tells you a bit more about the protagonist, which isn’t laid out very clearly: when you go into the “minds” of Darryl and Gwen, and pose as someone they knew – the reason Smilla is able to speak as if she were these people is because she went through the same problems they did.  So when she poses as Darryl’s wife and speaks in first person, she’s not actually talking about his wife – she’s literally talking about herself, and something she went through at a previous point in her life.

4. What could have been

I’ve already mentioned that Alton went through some rewrites, but what else was planned and got changed/removed, or what wasn’t planned but made its way into the game?

  • As far as rewrites, Darryl also saw the large majority of his dialogue get replaced over the course of development.  He initially was a more upbeat, personable character who cracked jokes to everyone on the ship – then in chapter 3 it would be revealed that this was a facade.  But it never really felt convincing to me.  It gave his arc a twist, but it didn’t actually make sense.  The whole point is that he’s apathetic, so the idea that he would spend energy pretending to be anything else didn’t add up.  So, wise-crack Darryl was replaced with dour Darryl.
  • I had always planned on full possession, but the implications of this mechanic from a story perspective were unpredictable and at some points I felt I had written myself into a corner – or worse, into a situation where there were too many possibilities to account for.  Most of the events in chapter 4 were changed in development as a result of the diverging possibilities.  The entire section where Gwen is put under suspicion and has to be proven innocent was added very late as a means of re-focusing (or limiting) the player’s agency.
  • On the other side, I had never planned on being able to “upgrade” your ghost form so that it looked like your former self, or the possibility of interacting with people while in your ghost form.  This means that I also never initially planed the instances where you go into the minds of Gwen and Darryl and fully unlock them by assuming the role of someone from their past.  In retrospect, the game seems like it would be really incomplete without these parts, and they actually didn’t take very much time or energy to create, so I’m very happy that I added them.
  • You probably wouldn’t know it if you didn’t play through the game multiple times, but the epilogue for the game is different not only depending on what ending you get, but also some of the decisions you make earlier on.  The same characters will have a conversation, but the direction that it goes can vary based on how they’ve interacted throughout the game.  This was another last-minute addition to the game that almost didn’t make the cut.
  • The “bathroom ghost” was yet another last-minute addition to the game.  I wonder what % of players have actually found this part, and what they made out of the ensuing dialogue.

Sweating the Small Stuff #2

Today we finish our look into the projects that didn’t quite make it to the finish line. Given that some of them are pretty old and didn’t take especially long to finish, you might wonder what else I’ve been doing.

For one…life.  It’s pretty intense, and this past year most of all.  But I’ve also done some work patching/updating Why Am I Dead At Sea with small features and fixes, and will continue to as much as I am able.  Lastly, among all the craziness I’ve started prototyping an idea that I’m really interested in. I don’t say that lightly, as the last idea I was really “interested” in turned into Why Am I Dead…and we all know how that ended up. So, hopefully, I’ll have some progress to show in the near future, and this can become a real dev blog once again!


#3: Invisible Maniac

Winter 2015 – 24 hours of development

This was another game jam submission for the Philly Game Forge, and this time we had 24 hours to complete a game from scratch! I’d done a couple of Ludum Dares in the past, but this would be my shortest jam ever, so I was pretty excited to enter it. It was 24 hours onsite, so we were able to stay overnight at the Forge and work through those magical hours where your body goes through the seven stages of grief as it slowly realizes that you aren’t going to give it any rest.

I came up with a little 2D stealth game where enemies can’t see you, and can only catch you via direct contact. But there’s a catch – you can’t see yourself either! Using only contextual audio/visual cues, you have to navigate through the game’s levels and past enemies.

IM1

As the levels become more expansive, losing track of where you are becomes more of a threat. To assist the player, there are objects that react to when the player walks over them, and sounds for when you hit a wall. There is also the ever-present sound of your foot-steps, which change based on the surface you’re walking over.

IM2

Thick grass will help you keep track of your location, and you don’t even have to worry about running into wild Pokemon!

IM3.gif

It gets pretty hectic later on, but using water and rock paths to “hear” your location will help!

Truth be told as much fun as I had working on this game, by the time 24 hours was up, I was quite sick of the thing, and had grown bored of the concept. I even considered not submitting it. But it’s good that I did, because people seemed to really like it! In fact they liked it so much they elected it the winner of the jam and gave me a nice wooden plaque for the occasion.

Subway

You can also pick up hoagies and use them to murder people, you’re better off not knowing why.

Despite my misgivings at the eleventh hour, I got a huge charge out of creating this little game. You can play it in-browser or download the whole thing on my site, but note that the download will let you play at a better resolution.


#4: about-face

January 2016: ??? weeks of development

This was a little platformer that I had the idea for way, waaaaay back, over a year ago. I did a tiny amount of coding for it eons ago, which I ultimately re-purposed for the other platformer I talked about in the last post, but finally picked it back up in Jan 2016. Given the haphazard way I worked on it, I really couldn’t say how long it all took me.

It’s a minimalist retro platformer – really genre-breaking, I know. I wanted to make something small and neat, so I did just that. It’s a platformer where every time you jump, the world inverts, and previous…oh, well, a GIF will explain it faster than I can.

aboutfaceintro

So, the world switches between white/black every time you jump. Platforms, spikes, and obstacles will phase in/out based on which color you’re in.

The idea was pretty simple – what is the core mechanic of platformers? Jumping. On platforms. What if I made it so that every mechanic was tied to jumping – every mechanic was tied to your decision on when and how to jump. The result was a game with very few mechanics but many interesting scenarios to design. This was probably the most fun I’ve had designing game environments by far!

doublejump.gif

Twice the jumps = twice the complexity in design!

Sentinels

Chasing enemies were added to turn the game from a slow puzzle-platformer to a faster paced action-platformer.

almostThere

It gets really hard.

I’m pretty happy with this thing, and at this point it’s basically done. The only thing it lacks is an ending (as of now you’ll just run into an incomplete level that can’t be beaten), but once I pop that in there I’d love to upload it to any channels I can. Until then, you may not be surprised to find out that you can play the current version on my website!


Well, that concludes this mini-series. At some point I’d like to redesign my website and include a section for these kinds of things – it doesn’t feel right putting them up side-by-side with something as large as Why Am I Dead At Sea. But I would like for them to have a space of their own.

Sweating the Small Stuff #1

Hello again internet.  Quick life update: I’m in the process of moving (again) and have gotten a full-time position as a software developer, so I’m back to the develop-on-the-side life like I was before.  Which I’ve been enjoying so far.  That whole full-time indie thing was more successful at burning me out than anything else.

I think I could’ve written 5 long-winded blog posts around that, but I like condensing it down into one sentence better.

It occurs to me that I’ve worked on a bunch of stuff since At Sea that I haven’t published or really talked about (at all).  This is either because they were jam submissions, or because I simply didn’t complete them.  In gamedev, we place a premium on full, finished games, and for good reason – it’s kinda important to be able to finish completed games (and really hard!), so it’s a skill everyone wants to cultivate.

However, the small experiments, the unfinished prototypes…these are valuable too. So I thought I’d take some time to talk about the smaller stuff that hasn’t been shown to the masses.


#1: Bzzz Out

Spring 2015 : 1 week of development

This was a small project that I worked on almost immediately after releasing Why Am I Dead At Sea – about a week after its release, I believe.  It was for a game jam that I was (lovingly) pressured into participating.  It was part of the Philly Game Forge‘s Dev Night – basically, a game-development-oriented shared space that runs lots of jams, and has a weekly meet up.

This jam in particular was called the “Juice Jam”, and the idea was simple and interesting – give everyone a template for Breakout in Unity, and make them create the “juiciest” version of it that they can.  If you’re unfamiliar with the concept of “juice” in a gamedev context, I would highly encourage you to watch the Juice it or Lose it talk.

Bzzzout

I teamed up with local artist Carley for the jam, and we had a week to create something with this Breakout template.  It was an interesting challenge, since I had never done anything in Unity prior to this.  From a development standpoint, I got to tinker with a lot of things I hadn’t previously used, such as tweening and particle effects, and I was able to laser-focus on a really interesting design challenge – juice it!

Although I could critique my work on this jam submission for several pages, ultimately I’m happy with what we came up with (especially the art!) and had a ton of fun working on it.  You can see or play our jam submission on either Carley’s site or my site.


#2: Dandan Man’s Super Dream Place

Autumn 2015 : 3-4 weeks of development

It’s a bit hard to evaluate exactly how much time I put into this project, as it was scattered over a longer period of time, but I was most productive, and did most of the work, in a period of about a week.

InDevCapture2

This game was meant to be an experiment in fourth wall breaking.  The idea goes like this: there’s a super cute and colorful platformer reminiscent of SNES games (especially Kirby) – but it’s not quite finished.  The writing has typos, there are little bugs in the game…and even one of the main levels is missing.  Then you get to the end and see a “warp zone” feature which can take you to that missing level you saw earlier but couldn’t access – huh, I wonder what’ll happen?

Well, now you’ve gone and done it…the game takes a darker turn and you have to navigate through an increasingly broken/glitchy/horror game to get to the bottom of the implied narrative.

Or that’s the idea anyway.  I mostly implemented the actual platformer, felt that nice sense of accomplishment, and called it a day.  The game as-is does already exhibit a bunch of different action/platforming mechanics with lots of different levels: you have a stomping attack that can be used to steal certain enemy’s abilities, and use those to get through various predicaments (like I said, reminiscent of Kirby).

InDev Cap Dash Level.gif

Although I didn’t finish the game, I found the work to be really fun.  This was the first platformer I worked on, and the most level-design-intensive project for me.  And while the art style is still not really very unique to me (it still wears its influences on its sleeve), doing the pixel art was fun and I like how it turned out.

InDev Cap Projectile

So why didn’t I finish it?  Well, to be honest, I still find the idea fun – but “fun” doesn’t cut it for me.  There was a particular feeling I was trying to express with the game when I originally came up with it, but without getting into specifics…I don’t really have that feeling anymore.  Maybe if that feeling returns I’ll happily return to this and finish it in one swoop!

You can try out the prototype here!

I know that in order to finish projects, you can’t depend on silly things like feelings – trust me, I very often didn’t “feel” Why Am I Dead At Sea when I was working on it.  But as this was a side-project that I just wanted to do for fun, I think it’s okay to recognize that my motivations for starting it are no longer present and move on.

Taking a Breather

Hi internet!  It’s been a while – let’s catch up again.

Let’s see.  A while ago I launched my first commercial game on Steam.  The game was in development for far longer than originally intended, and its release was much overdue.

Unfortunately, though I say I “launched” it, I don’t know if that’s really the fitting word, as most of the traffic the game received (maybe 90%?) is purely due to its place on the Steam storefront, meaning I did not succeed at publicizing the game or getting it the exposure I think it deserves.  And overall, it has garnered a small fraction of the views that its much smaller and cruder prequel had (not talking about sales here, just hits), which is pretty discouraging.  After all, the main reason I decided to work on this sequel was because of the apparent interest that was shown in the original.

But now the game is out there, and I can say that I finished and shipped a product with a pretty substantial play-length, considering the game consists 100% of scripted content.  There has been a lot of positive response from the people who have played it, and some really glowing user reviews that have just been a joy to read through.

I haven’t been as productive after release as I thought I would be.  I had all sorts of ideas for projects that were crowding my head, which I thought I would just speed through after being caught up on such a large undertaking.  Nope, turns out I was completely burned out from development and all of the stress leading up to release.  I have been working on several projects and have participated in local game jams, but so far haven’t been as possessed to publish something else with my name on it as I had been with At Sea.

get it?  possessed?

Partially I feel like I’ve proven to myself that I can see a project through to its end, so I don’t feel the pressure or need to finish every little idea that I come up with if it turns out that it isn’t really as interesting as it seemed at first.  Which is usually the case.  The fickle developer who can’t complete anything is a cliche, but in truth I think it’s important to also know when to leave a project.  Yes, you can learn a lot by completing a project, and it is an important skill to be able to “finish” something.

“Art is never finished, only abandoned” – some dude

There are definitely diminishing returns however.  The skill of “finishing” is only one of many, many skills that are required in game development, and it may not even be the most important one in this era of early access and open betas and development live-streaming and twitter GIFs and oh man, things change really fast don’t they?

But one thing I have definitely noticed is that my productivity and general ability to make stuff is so much greater than before I had originally set out to ship a premium game.

When working on other things, it kinda feels like the training weights have come off.  I’ve just spent some time catching my breath.

Launch Day

Just a quick little piece of news: Why Am I Dead At Sea is going to launch on May 11!  Woooo!

Yep, that’s all for now.