Wednesday, March 31, 2010

OPS: Mission Complete!



Well, what can I say? Two years went by a lot faster than I thought it would. Maybe it's the way Full Sail crams everything together, maybe it's because I enjoy doing what I came to school for. Either way, this Friday is my graduation ceremony, and our Final Project game is complete. All in all I think it turned out really awesome. Read for the game concept and my mini postmortem.

OPS is a first person game, focused on movement instead of combat. In fact, there are no weapons for the player to use at all in the game. You play as a secret agent in training, trying to complete a virtual reality course that is controlled by the Battle Aptitude Readiness and Recon Intelligence (BARRI for short).

The gameplay mechanics are all about tension, keeping momentum, and using things like vaults and slides to make your way past obstacles and to the end of the course in time, with a focus on learning the courses and turret placement for faster future runs.

What Went Right
Time Management
The entire time we were working towards final project, everyone kept telling us that we would have crunch for all of our milestones. However, my team ended up meeting 6-7 days a week for at least 8 hours. That seems like a lot, but it was in a laid back environment, and other opinions were right there. The thought process was, we're coming to school to do this for a job, so why not treat it like one.

WWise
Man, WWise made sound integration so much easier for us, and took a lot of sound related issues off of our shoulders, and put them in the capable hands of our sound team. We fought back and forth for a while whether we should use Fmod or WWise, but in the end the latter made for much faster integration when it came down to it.

Scope
The scope of our game for the time frame we had was almost perfect, the only thing we had over scoped was the levels (14 total were designed, only 4 were used), which we did on purpose, so we could trim later. All we had to do was hammer out the basic mechanics and test in each level to make sure the level worked with the game.


What Went Wrong

Work Distribution
Even though we as a team didn't have any real crunch periods, individuals did, just due to an unbalanced workload. For instance, I knew Maya the best, so I handled all the placeholder models, the models we got to put in the game, tweaking the layout of the levels, and item placement in the levels. This of course was on top of what my duties as a coder were. The final week before turn in, I was scrambling to get assets in, with the sound and art guys making them faster than I could implement. At the same time however, there were people who had literally nothing to do. If we could do it again, Scheduling would be a big thing to reevaluate.

Math Libraries
I don't have a real problem with the XNA math library, which is what we ended up using. The big problem we ran into was in the first month, we switched math libraries 3 times. Not only did this take a little getting used to, but some of the team had to redo code up to three times to make up for the changes. In the end we figured out the XNA math library and how to use it, it just could have been handled in a more timely manner.

As of right now I can't think of anything else to add to this, so with that, you can find the game Here. Give it a try and let me know what you think!