Quick Summer 2015 Game Jam Postmortem

Category : Coding, Games, Reflections · No Comments · by Jul 24th, 2015

Screen Shot 2015-07-22 at 11.01.54 PM

Though UA GameDev Club’s summer jam was only 30 hours, I came out of the experience full of new insights.

What worked well:

  • The brainstorming process – I tried some free association at the very beginning and was organically led to an idea that’s both unique, technologically feasible, and has a lot of potential for quick polish. It was the most painless brainstorming session I ever had, and I suspect that two factors may be behind it: working solo, and keeping the most difficult constraints as the first ones I consider. Regarding the latter, I think recognizing the uniquely abundant affordances of using real-portraits early on was a big win.
  • Solutions bred from time constraints – the huge time constraint prompted me to make decisions that ironically benefitted the game itself. The game was originally intended to contain endless-levels, with each level a new room with new portraits. The lack of time to make animations and adjust difficulty forced me to constrain the entire game into one room with fading portraits. Narrative-wise it seems to make less sense, but I near the end of the project I knew instinctively that this approach would be better. I learnt that the logic of the game world is in fact as malleable as its graphics and sounds.
  • New tech requirements made the Jam a learning experience – Over the past two GJs I have been gradually inching out of the familiar territory of 2D games into 3D, but each time I made sure I only bite off as much as I can chew.
    The feeling of learning a lot of new skills AND finishing a nicely-designed concept is one of the most positive out there.
  • Game immersion – Perhaps by luck, I stumbled upon an idea that affords a lot of immersion. I think the idea of using memory and instilling panic as an integral part of the gameplay had somehow erased the boundary between the player and the avatar. The identity of the avatar as a powerless human character also helped covering up the fourth wall.
  • Built-in breaks – the knife-removal part of the game took longer than it should to implement, but I am happy with the break in tension and realism that it affords in the end. I was originally worried that the player would take too long of a break or find the task boring, but I think to a certain extent the human psyche is built in to continue the game at the optimal level of interest/arousal. To say simply – players make subtle attempts to stay in the flow state.

What went wrong:

  • Not really a team effort – The game was originally going to be an effort of a team of two. However, I think I was a bit intimidating initially in my ambition to create a really polished game and in my obsession over details that later on seemed relatively minor, especially since my potential teammate was much less experienced in game jams. The teammate did not return the second day, despite promising twice that he would contact me.
    I think during the jam I was struggling between knowing that I would likely construct a higher-quality game on my own and the sense that I should pick up less-experienced developers to learn about both social skills and team-management. I initially wanted to work solo but wavered during the team-forming phase. I think in later jams, I should commit to either solo or team options right away and stick to it till the end.
  • I didn’t compose the music – I think it’s better idea to not even consider composing for a GJ entry.
  • Didn’t finish the introduction and the ending – thinking back to the GJ, I don’t actually recognize any point when I could have done more to mitigate this problem without hurting the game in some other way.
  • Players didn’t have much motivation to stay – from the intro, the players know that there will be four levels and that the levels will generally be the same. For this reason, several players decided that they don’t need to see what’s beyond the first. I think that the issue lies in the game progression rather than the introduction though, and that I can probably add later hooks to keep the player engaged.

Other thoughts:

  • Negative thoughts during GJ – while I felt extremely good upon completion of the GJ, during the day of the competition my thoughts often lapsed into pessimism – “perhaps I should have picked a different idea after all”, “at this pace I will never finish”, “shouldn’t have slept for so long”.
    I began to realize that pessimism can occur in perhaps all but the most magnificent game projects, and that it’s a significant cost of working solo.
  • Don’t underestimate other players’ entries – being an extremely competitive person, I had thought that the game will likely be the best entry from the Jam. But looking at the final entries, I don’t think that this is actually the case, and was a bit ashamed for putting so much pride into the game.
    But then again, perhaps this is required to combat the pessimism outlined above.
    After all, Orson Scott Card once said something to the effect that “as you write, you should think of your writing as simultaneously the worst thing and the best thing ever written.”

In the next week or so, I will take a day to polish the game and add the features that didn’t make it on time. Stay tuned for the release!

Don't trust the loudest voice in the room

Category : Communication, Reflections · No Comments · by Jul 16th, 2015

One curious pattern I’ve observed during college is that as a person’s verbal promise grows in magnitude and audacity, the actions corresponding to the promises tend to be more subdued.

In other words, if you hear a person proclaim that “I will change the world!” Then it would be a favorable to bet that the person is very unlikely to change the world. On a smaller scale, the more enthusiastic someone agrees to a gathering or a collaboration later, the more we are right suspect that the person will bail when the time comes.

Several possible explanations to this phenomenon comes to mind. One is a version self-licensing effect that doesn’t deal with just morals but actions to require some self-discipline to deal out in general. The rush of euphoria that comes with a bold statement may trick the speaker into believing that concrete measures are being taken to advance the goal. In fact, nothing concrete is done until something concrete is actually done.

The second explanation may be that the style of the statement itself tends to arise from episode of emotional swings. Even more so than mental illness, I observe that the swings comes from two places: an innate emotional temperament and/or unstable self-esteem. In both cases, perhaps influenced by the need to aggrandize oneself on from of an observer, the proclaimer makes an exorbitant remark and forgets it shortly after.

Finally, it may be possible that holding such statements within can actually channel energies towards the desired goals. Speaking is a means of self-expression, but the expression could be substituted with action through a process somewhat like sublimation. I realize that this is the less scientific-sounding than the previous two, but from personal experience, I feel that it might bear some weight.

Self constraint, overt optimism, and lack of intermediate goals are all additional factors that could explain the phenomenon. But at least for me, the course of action is clear- never make big promises without much prior thought.

For those who are reading, please don’t, without a proper context, tell me that you will be that next “changer”.

Disabling Youtube Front Page Recommendations

Category : Coding · No Comments · by Jul 2nd, 2015

Youtube’s front page recommendations have always been a distraction for me. Due to reasons I can only interpret as political, the Chrome store has no extension to disable front page recommendations on Youtube. Thus I wrote a quick and dirty script to remove the recommendations.

Note that since Youtube uses a JS framework that prevents me from disabling the recommendations once and for all, I had to settle for the solution where the recommendations are cleared every half a second. The cost this incurs in the browser should be negligible. Please let me know if you find a better way!

The script was tested on the Tampermonkey extension in chrome. Install the script here.

Let me know if you run into any issues!