Games
Here’s a sample of my game projects. The listed years are the years on which I worked on the project. Many of the older ones are projects done in the Game Creation Society as an undergrad at CMU. All games are cross-platform PC games (either downloads or in-browser) unless otherwise noted.
Selected Projects
The games I had the biggest hand in or are the coolest, in chronological order.
A primary tool in my research at UW. It’s a Flash game designed to help people learn fraction mathematics, and the project I’m currently abusing to try doing totally crazy stuff with procedural content generation. Co-leading with a couple other grad students, I do production, programming, and design for the game. Expect to hear a lot more about this in the future.
The first phone game Kris and I made, in about 3 weeks. The main goal was to go through the process of releasing a game on a public marketplace, while trying to create a small but unique and fun game for a touch device. We chose WP7 because the development environment is amazing; we weren’t concerned with actually making money off the project.
A research game I worked on at CMU. I did a major overhaul of the rendering system to improve the aesthetic and performance. I learned that debugging OpenGL code on Linux with an ATI card is something to be avoided, and to never ever use 1-indexing ever. Seriously. Don’t do it. Also a major reason I was drawn to go to grad school at UW.
My very first public game and the first of many projects I worked on in Game Creation Society. I made it during my first semester in college in my spare time with other undergrads while trying not to fail classes. I led the project and did most of the programming and design. The concept for the game was a platformer where you swung around on a grappling hook. The swinging part turned out to be really fun, so I promptly squandered it by making levels with lots of narrow corridors. It was a fantastic learning experience where I wrote impossible-to-maintain Java code, misled my group so badly that most of them quit, and designed levels with the idiotic belief that difficulty should be balanced for me, thus ensuring that it’s unplayable by the rest of the world. But I’m still damn proud of it.
Prototypes and Other Projects
All the other stuff. Everything is playable, even if barely.
EteRNA
2009
Programming, Concept Work
Official Website
My second research game at CMU. I was involved with the project primarily in its initial phase, so most of my work was prototyping and conceptualizing.
Quadropus
2009
Programming
Download Page
Another GCS project, where I led up programming. This was experiment with PyGame, which is really cool, but I learned that you should never write programs in unityped languages larger than 2 files unless you want to spend all your time writing unit tests or dealing with errors the compiler should have caught. I also experimented with storing game objects in a cool way where each object was just a name and the components of the object were stored as within each game system in giant arrays. It’s my currently preferred method of making scalable and easy-to-modify game systems.
Psychiatry
2009, Windows
Co-creator with Kristin Siu
Windows Executable
Something we did in Gamemaker for a game jam in 4 hours for the theme “Blue.” Playing this game has been described to feel “like reading a philosophy paper written on Ayn Rand by an angsty middle school student.” Also “asinine and inane.” I think I should avoid making artsy games until I learn subtlety.
Sky Sailing
2008, Windows
Creator
Windows Executable
Another game jam entry for “one button game.” I made it in Gamemaker in around 4 hours by myself, including the music. I like the song far more than the game. Composing music is fun.
Supercrawl
2007
Production and Programming
Download Page
A GCS project. I took primarily a producer role on this one, and did a significantly better job than previous projects. Learning to lead a group of programmers well has been immeasurably valuable.
Starbound
2007
Project Director
Download Page
Yet another GCS project. I did all the programming and production, and a lot of design. The concept was to make a shooter where you couldn’t actually shoot, only deflect enemies and run away. I think the concept was cool and the execution appalling. This was also my first experience with C++, where I tried to write some crazy entity/component system back before it was cool. I learned that separating your logical game objects into distinct pieces is a great idea, but communicating between these parts must be done carefully. If you use message passing with immediate handling of messages like I did, your control flow is absolutely impossible to reason about. So don’t do messages that way. I’m starting to dislike event listeners entirely, to be honest.
Dreamscape
2007
Character Animator
Download Page
And another GCS project. It’s probably the only game I did absolutely no programming on. I instead made animations using this cool 2D animator one of the programmers built for the game.










