Please click on a title to expand or collapse the information on it.
Professional Game Projects
Power Defense - PlayEveryWare, 2009-2012
This is our first title at EveryWare, that we hope to ship by summer 2010.
Power Defense is a tower defense game that is based upon battery life, where each shot will drain a little power. Along with placing towers and fighting waves of enemies, the player must manage connections to power generators, choosing the right towers to charge at the right time.
Responsibilities
- Programming: Nintendo DS memory and resource management; 2D and 3D rendering systems; physics; gameplay systems; build configurations
- Business: Contacting publisher and exploring contract work opportunities
Hybrid - 5TH Cell Media, 2012
Hybrid is an innovative 3rd person shooter, with combat-focused movement to navigate between cover and solid controls, using a heavily modified version of the Source engine.
Worked on gameplay, primarily Weapons and Abilities.
Also contributed to UX, primarily Flash related user-interfaces connected to Source through Scaleform.
Hybrid Developer Walkthrough Video
Insanely Twisted Shadow Planet - Fuelcell Games, 2010-2011
Insanely Twisted Shadow Planet is an metroidvania style game. You control a small alien ship trying to defeat an entire planet.
Worked on an extremely small programming team to support a mostly artist driven studio. It was a lot of work to finish the game in time with all the required features (60fps, boned animation driving physics, fully streaming world, networking system) in time for the 2011 Summer of Arcade promotion and meeting Xbox technical certification requirements. I spearheaded the Lua systems which included the integration with our engine, the entire Level Editor, behavior architecture, streaming, and resource pipeline. My animation system and tools were made so the artist could quickly see their assets in game, supports non-uniform scale per bone, as well as robust script integration for the design team. The effects system I integrated is time-line and component based and needed a strong consideration for performance, while the end-user tool has rich integration with our engine. I also managed debug systems for scripters to work on their Lua while on the XBox. I was also in charge of build submissions for our publisher. Having a wide reach and combining a lot of systems, as well as coordinating disciplines was the best part of this job.
Transcend - Fishbeat, 2009
Transcend/Aleph is a rhythm shooter, based on the 2008 IGF Student Showcase winning game Synaesthete, being made at the startup independent studio FishBeat located in Bellevue, WA.
Unfortunately, this game is no longer being continued in it's current incarnation as the publisher withdrew support, but I'm looking forward to seeing what everyone still at FishBeat will make next!
Responsibilities
- Programming: Integration with Bullet and then PhysX; physics component editor; character controller and contact responses; Lua system debugging, performance and memory management
- Gameplay: Beat-matching; player feedback; UI/HUD; prototypes
- XBox 360: Profile management; leaderboards; achievements; guide integration; trial mode
Video & Screenshots Unavailable
Independent Game Projects
Thrust, 2010
Thrust is a fast paced 2D physics based game, created by Patrick Mera and myself, for the Gamma4's 2010 One Button Game Contest. Pat had already had implemented the concept, and so when I joined up I worked on finishing the Box2D integration, sending contact data to lua, and prototyping different types of obsticles (none of which stayed in).
I also worked on the High Score menu (which also had to only work with one button), the Main menu, a first draft font system (that Pat rewrote and improved) game-state progression, and general polish where I could.
Triple Trouble, 2010
Triple Trouble is 2D physics based game, created by myself and Dan Stracharske in under 2 weeks for the Gamma4's 2010 One Button Game Contest. We shared responsibilities, but I primarily focused on Lua integration, processing contact data, writing Lua scripts for game objects and camera, and player feedback (which is tough when you don't have time to get texture support in).
You're direction rotates automatically. Press the button to go forward - then drift, bounce, or turn on a dime to steer your way through the level and grab powerups that change your color. Hit enemies of the same color, and they'll drop collectibles after being hit 3 times! But watch-out, if your colors don't match then they'll regain health.
School Projects
Curve Interpolation
MAT300 - Curves Interpolation
Renders a curve using recursive deCasteljau algorithm or deBoor algorithm. Allows for control points to be generated through a cubic parametrization, generating control points though mouse inputs, and configuring knot values and blossoming degree.
The application is written in C#, and allows the user to create points, move existing points, zoom in and out, change the current point, input parameterizations directly, and change any of the knot values or degree (deBoor). Uses the Shoemake colorization to draw the shells.


Rigid Body Simulations
PHY300, CS461, and GAM300 - Rigid Body Simulations
Gravity and Spring forces are used to control a chain of objects.
- Intergrates using various Numerical Methods:
- Runge Kutta 4
- Implicit Euler
- Explicit Euler
- Verlet


Old-School
QBasic Games
While in middle/high school, I self-taught myself qbasic and made a few games. My GPA suffered, but my education didn't!
Moogle/Pac-Man RPG
This had so many different versions, it was almost impossible to find any version that worked. The graphics are pretty awesome for QBasic, using assembly to scroll pixel by pixel, although it was ridiculously slow. Scrolling world map, entering towns and talking to NPCs, cinematics and AI, battle system, and managing inventory and equipment... it was pretty ambitious for a QBasic project.






Chess
My friend Eagle and I played chess alot in high school, and on occasion we liked to play a weird 3-level variation. I made this QBasic chess game so we didn't have to setup the boards so often. You knew you won the game with checkmate because the game would crash. I also never got enpassant or castling implemented, nor did I try to write AI - this project was more style over substance. Eventually I modified this to an RPG Battle Chess game prototype, which I never finished but evolved the design quite a bit into my DigiPen freshman game "Project JAWESOME".


professional Games
Independent projects
School Projects
Curve Integration - DigiPen MAT300 Project
Rigid Body Simulations - DigiPen PHY300, CS461, GAM300 Projects