My Portfolio

Professional Projects

Elemental: War of Magic

Company: Stardock Corporation
Released: 2010
For: PC
Engine: Custom
Dev Platform: Visual Studio 2008

Elemental: War of Magic was a game created for the Windows platform. While my initial responsibilities involved coding a system that allowed players to build cities, I eventually branched out and did work in almost every subsystem of the game. I also worked closely with artists and developers to quickly implement complex user interfaces. Most of the spells, buildings, units, and various other in-game objects were described in code using XML, and I both created the XML files for these objects and wrote the supporting code to ensure the proper handling of these objects.


Company: CrazyBump Software
Released: 2009
For: Mac
Engine: Custom, based on Qt 4.5
Dev Platform: Visual Studio, Xcode

CrazyBump is a very popular tool for artists to quickly make bumpmaps out of their other artwork. Unfortunately, the original author wrote it C# using .NET. He’s had many requests for a Macintosh-compatible version, so he contacted me about providing the graphic user interface for one.

I used the Qt 4.5 GUI platform because it is cross-platform between Windows and OS X. Even though I was required to create many custom controls from scratch that Qt 4.5 didn’t natively support, I was able to complete the project in just under two months.

The Sims Castaway Stories

Company: Aspyr Media, Inc.
Released: 2008
For: PC
Engine: Sims 2
Dev Platform: Visual Studio 2003

The “Stories” series was an attempt to add more story and structure to games based on the Sims 2 engine. As a result, the game plays a lot more like a traditional point-and-click adventure game, although the classic Sims elements still exist.

The designers found both the size of the lots and the camera controls of the original Sims 2 engine too limiting, so I was responsible for both increasing the lot size and creating a completely scriptable camera system with three different tracks – a camera movement track and two “effect” tracks that ran simultaneously.

The story also required a massive amount of text that had to be localized into almost twenty languages. I provided programming support for this effort both in the game and the installation program, which also had to be upgraded to support the Windows Vista Game Explorer.


Company: Aspyr Media, Inc.
Released: 2008
For: PC
Engine: Custom, based on Scaleform
Dev Platform: Visual Studio 2007

futureU is a SAT preparation game based on the Scaleform engine. This allowed the designers to create their minigames using Adobe Flash and import them directly to the game.

But the designers wanted something a bit flashier. They also wanted a toon-shaded, 3D animated character that the player could customize, and I provided the programming support for this feature. Since Scaleform provides no 3D capabilities, I wrote a Direct3D-based renderer from scratch and incorporated it into the Scaleform engine. We used Adobe’s FBX format to store the model and animation data.

Hit & Myth

Company: Gizmondo Studios Texas
Released: 2005
For: Gizmondo (Windows CE-based handheld device)
Engine: Zarria
Dev Platform: Visual Studio 6

The Gizmondo was a Windows CE-based handheld device that featured an nVidia GoForce 4500 graphics processor, so it was capable of 3D graphics most devices of its type was not. Hit & Myth was a fully 3D fast action shoot-em-up game presented from an overhead perspective.

I was responsible for pretty much everything but the main 3D engine and world editor. I wrote the font renderer, the GUI, the conversation system (which I created an editor for, see below), the cinematic system, the save/load system, the AI system, the minimap, and the spellcasting system. I was also responsible for providing programming support for localization of the game into five languages.


Company: Gizmondo Studios Texas
Released: Internal
For: PC
Engine: .NET
Dev Platform: Visual Studio 2003

ConvEx was a conversation editor I wrote for the Hit & Myth project. Initially conversations were created using simple text files, but I firmly believe that the better the tools the designers have, the better the resulting game is. I used C# in order to complete the project quickly.

The editor allows the designers to create text nodes that they link together in a visual manner to create conversations. It also allows designers to do things like play sound files or cast spells when certain conversation nodes are hit.

The conversation editor really came into its own when we were doing localization.

Leave a Reply