Sundrops is a physics-based puzzler where players strategically place platforms to guide life-giving sundrops to the planet below. On Earth the sun emits light, but in Sundrops it spews brilliant spheres of pure 3D. A legion of fun-hating Monochromes hopes to deny the planet this energy, and has set up obstacles to foil your attempts! Battle the Monochromes and take back the planet, one level at a time.

I developed Sundrops in Processing using Fisica, an excellent Java wrapper for Box2D. I first built a basic game loop, then added functionality piece-by-piece. Each new object extended a specific box2D body, adding special abilities and attributes related to the red/blue color mechanic.

Sundrops was developed iteratively over the course of 8 hour-long playtest sessions. After each test I added small doses of functionality, for example portal warping, color clouds, and the adjustment of rainbands. This agile methodology allowed me to design and develop in parallel. I programmed an XML level parser to facilitate this back-and-forth. This investment helped separate design from implementation, greatly expediting level design.

Level designs began on paper and then transitioned to digital. This allowed me to quickly prototype visions at low cost. Ultimately I produced 5 levels, but there is potential for many more given the components available. A key challenge for the future will be crafting a difficulty ramp. At what pace should the player progress through the game and be exposed to new functionality.

Luminous is a WebGL clone of Lumines, one of my favorite games from one of my favorite designers. Tetsuya Mizuguchi’s block-dropping puzzler sweeps players into states of flow with its addictive gameplay and elaborate presentation. For Luminous, I implemented all original game logic with JavaScript and Three.js.


Soon after to the launch of Arkadium Games’ Ultimate Fan, its ‘Player Boost’ feature was labeled defunct. Analytics showed a high bounce rate, so I took on the task of redesigning the system. The original interface suffered from cold aesthetics and confusing game dynamics. Players could ‘boost’ their favorite stars to show support, but this felt disconnected from on-field action.

My redesign brings the action to the field, visually pitting both sides against one another. Users select a positional matchup and ‘Boost’ their favorite across 3 simple categories. Progress bars reflect which side is winning, while a tickerallows players  to trash talk the competition. The redesigned system supports fan vs. fan conflicts, capitalizing on the factionalism that pervades the NFL.

I also performed supplementary sound design for the project. These effects accompanied animations and helped bring them to life.