Friday, December 6, 2013


Hey guys. How's everyone doing?

Actually, maybe it's a little presumptuous to describe my readerbase with a plural noun. Anyway, I figured that I hadn't posted here in a month, so here's what I've been up to:

This past weekend, my friend and Interactive Media classmate Andrea Cao mentioned that her writing professor gave her the option to turn a game in in place of an essay. This was a juicy friggin' opportunity, so she of course snapped it up, and asked me to help develop her project.

There were a few issues, though. Last week, my computer was mysteriously bricked! Thankfully, all my stuff was backed up. But to make things worse, restrictions in the USC computer labs prevent me from installing MMF2, my game-authoring tool of choice.

Eventually, I resorted to programming the game in Lua, using the LÖVE 2D framework -- my friend John King gave me a little tutorial with this about a year ago, and it was pretty much my only option. Developing with Lua was frustrating at first, but I have to admit: MMF2 has become something of a crutch for me, and it was nice to finally make something with 'real code.'

Anyway, let me show you Amourphous:
Get it?

Based on A Midsummer Night's Dream, Amourphous is about lonely shapes wandering through a forest and looking for love. As a Puck-like entity, your job is to happily couple each of these eight lovers before the enchanted evening dissolves into dawn.

Clicking on the edge of a lover propels them in the opposite direction, sort of like a hockey puck. Moving lovers bounce off the edges of the forest, as well as the fairy circles surrounding the trees. Eventually, natural deceleration brings them to a stop.

A lover being launched by the cursor

When two different lovers come close to one another, and their angles are equal within 45 degrees, the two change into the "courting" colors, and begin gravitating towards one another. After spinning around each other's center for a while (it's just the gravity slingshot effect, but I like to visualize it as flirting, or maybe  even foreplay), the two lovers become joined.

Top: two star-crossed lovers meet, court, and unite.
Bottom: two lovers are thrust into a dysfunctional relationship

However, the relationship will only be a happy one if the lovers are right for each other -- that is, if they fit together properly. Otherwise, the two become "mismatched," and are miserably stuck with each other. These dysfunctional couples need to be broken up if they are to become happy, and so the intervention of a third party is needed; players need to launch a "single" piece into the couple and break them up.

The goal of the game is to join all eight lovers in happy union before the end of the night. A meter at the bottom measures the transition to day, and increases one segment with every move made by the player. Failure to unite all the couples in this period results in a game loss.

Anyway, that's what we made! Andrea did all of the art assets, designed the core mechanic, and placed the elements within the level. I designed the lover physics, and developed the software. It's a simple thing, representing less than 2 days of work, but I hope you like it! Andrea had a cool idea, and I'm satisfied with how it turned out.

So that's all for now. I might see you all again pretty soon -- unless the computer situation becomes too much of a pain, I plan on participating in TAG #6, so maybe I'll be able to show you something from that as well. 

Until then, my dear and totally 100% existent readers, goodnight.