chris pruett | projects | personal | games | links |
Spider-Man 3 PS2/PSP/Wii Spring 2007 Spider-Man 3 was a large project. I acted as the West Coast Lead Programmer, and was responsible for implementing a variety of systems, notably player handling, animation, and asset conditioning. I spent a lot of time writing Spidey's swinging system, which was designed to subtly change behavior depending on the way the player was moving through the world. As a lead, I was also responsible for running a team of other programmers. At peak, I had about twelve guys reporting to me, which was a much larger group of people than I've previously managed. Spider-Man 3 was met with pretty mixed reviews, but the swinging system was one of the things that most reviewers enjoyed, so I feel pretty good about my work on the project. |
X-Men Legends 2 PSP Spring 2005 Created by Raven Software using VV's Alchemy graphics technology, X-Men Legends 2 is an excellent RPG/brawler. Our task was to port the game to PSP and add content (new levels and characters) to Raven's game. My job was to optimize the game data so that the original Playstation2 assets could be used on the Playstation Portable. This was a difficult and frustrating task, but in the end the game turned out pretty well. Gamerankings shows an aggregate review score of 86%. |
Spider-Man 2 PSP Spring 2004 I only had one task on Spider-Man 2 PSP: I wrote a boss fight between Spidey and The Vulture. Still, this project was interesting because I got to work with somebody else's AI system. It's also nice to be able to say that I worked on a PSP launch title, even if my role was exceedingly minor. |
Brother Bear Summer 2003 Hot on the heals of Finding Nemo, I went to work on another animated Disney property: Brother Bear. As lead programmer on the project, I ended up touching almost all of the game systems in one way or another. For this project we were able to develop some cool new technology, and I spent a lot of time integrating this tech with the handling and AI. Nintendo Power gave Brother Bear a 3.3 out of 5, and GameZone Online gave it an 8 out of 10. |
Finding Nemo Spring 2003 Finding Nemo was an interesting project. In addition to incorporating visuals and plot elements from Pixar's film, we needed to create a game that was both non-violent and challenging. My role on Finding Nemo was as a game play programmer; I developed the player handling, AI, and mini games. Nintendo Power gave Finding Nemo a 3.8 out of 5. I am very proud of this game: it has sold over a million copies since its release. |
Crash Bandicoot 2: N-Tranced Fall 2002 Crash 2 was my second project as a lead programmer at Vicarious Visions. Building off of the first Crash GBA title, we were charged with adding a bunch of new features and options. We ended up creating all new levels, enemies, and crate types, new multiplayer games, a realtime 3D Atlasphere game mode, improved handling, a new level progression system, new playable characters, and new vehicles for Crash to ride around in. I had a good time with this project because it allowed me to explore AI and handling design in detail. |
SpongeBob Squarepants: Revenge of the Flying Dutchman Summer 2002 Ok, so my role in SpongeBob wasn't as large as in Frogger or Crash 2, but I am very glad I got to work on this project. Developed at Vicarious Visions, Inc., SpongeBob's second GBA title rocks. My duties included engine maintenance and updating, AI system support, and simple game mechanics work. |
Frogger Advance: The Great Quest Spring 2002 Frogger Advance is a Game Boy Advance title based around Konami's Frogger licence that was developed by Vicarious Visions, Inc. I acted as the lead programmer on the project, developing the game logic and mechanics, character handling, AI system, visual effects, game progression, and several of the boss encounters. This was an interesting project because it is a departure from previous Frogger games: instead of the top-down street crossing mechanic Frogger is famous for, we were asked to develop a side scrolling platformer. The end result was a pretty cool adventure game aimed squarely at kids age six to ten. Frogger received a 7 / 10 score from IGN.com, and a 8 / 10 at VGNation.com. Frogger also received the All Star Award from the Children's Software Revue magazine, a bimonthly magazine the focuses on software for children. |
Crash Bandicoot: The Huge Adventure Spring 2002 Developed by Vicarious Visions, The Huge Adventure is the first Crash Bandicoot game to be developed for the Game Boy Advance. My role in the project included boss AI programming, character handling improvements, background animation implementation, cut scene progression logic, and a Japanese localization system. The Huge Adventure received very high praise from a number of reviewers. The game scored 9 / 10 at IGN.com, and a 7.4 / 10 at GameSpot.com.
|
Power Rangers Time Force Fall 2001 My first project a Vicarious Visions, Power Rangers Time Force was a neat way to get aquatinted with the GBA hardware. The game itself is a side-scrolling action game, reproducing characters from the TV series. My job was to create a couple of boss encounters and to make the introductory animation sequence. I also was in charge of localization of the game into several different languages. |
Horror Game Demo Spring 2004 Those who know me know that I am a die-hard fan of horror games. In 2004 a friend of mine and I decided to throw together a basic horror game engine to see how hard this format of game might be to build. We dubbed our demo Terminal Station after a 1954 film by Vittorio De Sica. We were working in our free time, off the company clock, so in total we probably spent around three weeks of work on this project (over the course of two months). In the end we had a pretty cool demo: a character who could walk around a series of rooms, complete with camera cuts, tracking cameras, film grain, Devil May Cry-style controls, point lighting, and shadows. The demo ran on PC and PS2 (total frame time of 4ms!) with place-holder art. Nothing ever happened with the demo after that--it remained just a tech demo. But I did learn a lot about how third-person adventure games, particularly those with fixed camera systems, might be built in a very short amount of time. I'd really like to work on this style of game for real one day. |
C Compiler Spring 2001 Another school project, I implemented a C compiler to match a spec provided by the course instructor. Written in C, the program parsed a simplified C grammar and generated "quad" pseudo-instructions. The quad file could then be run through an interpreter and executed. Though my implementation did not cover the entire C grammar, it correctly generated quads for array referencing/assignment, variables, functions, logical operators, ifs, fors, local and global scopes, and the basic arithmetic operators. Writing a compiler taught me a lot of cool stuff about C and was a fun and difficult project. |
Pfhortran Scripting Language Summer 2000 Pfhortran is a simple scripting language built on the Marathon Open Source Engine. Marathon is a game engine by Bungie Software (now Bungie Studios) that was released as open source in early 2000. Pfhortran allows map makers to exercise precise control over the camera, game environment, and player information as the game is played. Written in C, Pfhortran is now part of the Marathon CVS code, which is commonly known as Aleph One. Pfhortran's language features include relative jumps, variable management, camera animation and interpolation, and fast execution. Finally, an complete manual and tutorial for beginning Pfhortran scripters is available at http://source.bungie.org, the Aleph One Project hub site. |
Marathon Process Manager Spring 2000 Another project based on the Marathon 2 source, Marathon Process Manager is an attempt to implement a Macintosh version of Dennis Chao's Doom-based process management system for Linux (which can be found at http://www.cs.unm.edu/~dlchao/flake/doom/). The idea is that each process running on the machine is represented in the game world as a monster, and that by killing the monster the player also kills the process associated with it. Though not quite as effective as Chao's implementation (due mostly to the cooperative multitasking nature of pre-OS X Macs), Marathon Process Manager works pretty well. Marathon Process Manager was written in Spring 2000 for an Operating Systems class at Pacific University. |
x86 Assembler Spring 2000 As the main focus of a System Design course in early 2000, each student wrote a two pass x86 Assembler. Though the basic lexicon, directives, and object module layout were decided by the class as a whole, actual design and implementation of the assembler was an individual project. Our lexicon supported most of the basic 286 assembly instructions, and our object module structure was a simplified version of Microsoft's .obj format generated by MASM. My implementation was able to build object modules from simple assembly source that could be linked up into an executable by Microsoft's Link. As long as the source was relatively simple, my assembler was usually capable of parsing the assembly and outputting an accurate object module file. |
3D Chess Demo Spring 1999 A project that never got finished, 3D Chess Demo was my first foray into 3D. Using Apple's QuickDraw 3D API and the Queeg game development library, I attempted to build a simple 3D Chess game. I modelled chess pieces with the excellent tool Meshwork, and wrote enough code to move a single piece around on the board before I quit. |
Fire Screen Saver Fall 1999 The Fire Screen Saver was written as the final project in an x86 assembly class at Pacific University in fall 1999. The executable generates algorithmic fire using a method similar to Brian Stone's Campfire averaging example. The program also read simple data files off the disk, and suggested that the teacher of the course be "fired." |