Doric column
David Pittman
HomePersonal ProjectsTeam ProjectsResume
Doric column

Rhapsody of the Ancients

Rhapsody image



Quick facts:
Development time: 3 months
Engine: Original

Rhapsody of the Ancients is a 2D action/adventure game in the style of classic 16-bit platform games. I developed it single-handedly in two months as my first term project at The Guildhall at SMU.

The gameplay in Rhapsody was built on a robust 2D physical simulation I developed. The physics engine modeled gravity, friction, and collision forces for objects of various masses. These forces were fed back into the gameplay systems to cause damage to entities. The physics system was also employed with simplified collisions for purely visual particle effects.

Rhapsody utilized an original full-featured 2D graphics engine. I defined the animations in a custom script format with support for arbitrary loop points and variable frame times. For the particle effects, I used alpha blending and additive blending. I wrote a per-pixel lighting algorithm in software to light the game's normal-mapped title logo. The game also featured three layers of parallax-scrolling backgrounds and a full-frame motion blur effect.

To build the game's maps, I created an easy-to-use, layer-based map editor dubbed Architect. In this tool, I could place tiles on any parallax layer, define the collision of tiles in the foreground, and place static entities (player/enemy starts and map exits). For easier viewing of the whole map, I created a satellite minimap window. Finally, I added a pared-down version of Rhapsody's physical sim to Architect to allow the user to drop physical objects into the map and have them fall into place and stack properly.

As the sole developer on the game, I also produced all the art and music assets. I modeled and animated the characters, drew the tiles and backdrops, and wrote the game's MIDI music. To play sound effects and music, I integrated FMOD and wrote a custom sound manager wrapper.

Old Rhapsody of the Ancients home page
Installer: MSI 4.5 MB



Rhapsody image Rhapsody image Rhapsody image
Rhapsody image Rhapsody image Rhapsody image