Sunday, January 22, 2006

The development process

I've worked on many developments, long, short, conversion, diversion, pet, work, community. One project stands out from all of them, and its only really just started.

I've always been one for diving in, getting things done, but with plan of action. I'd spend quite a bit of time figuring out how long things take to do, then add them up and report back to whoever wanted to know. Most of the time it fell on deaf ears, when it didn't they weren't pleased with the reports (probably because they sounded so pessimistic). Even when we did get any kind of go ahead, all we did was lookat the schedule and attempt each milsetone in turn, going from definition to final code in one difficult step.

Because this latest project is extremely short original title (10 weeks from start to SONY submission), but reasonably well funded (we can afford four full time coders plus a PS2 graphics programmer for 4 weeks), it made us all panic a bit. Okay, so obviously this isn't the next GTA, but it has to be completed to the point where SONY will accept it, and that means that its gotta be bugless, behave completely as expected, and be reasonably good within the limitations of the timeframe.

So, for the first time ever, we designed the game technically. Now, when a lot of people hear that they might assume that we'd never done a technical design doc before, they'd be wrong. A technical design document for us though had always been a document about what we were going to do, and what technology we were going to use to do it. This has been the kind of document requested from Sony for some time now, and its the limit of what we had previously produced. This time, we didn't stop. We went deeper with the game logic, peeled away when and where the data was used, how the in game entities interract, right down to the actual pseudo code for an entities' reaction to a collision from a player. We then stepped out and had a look around at the code, added more work on the initialisation of levels, and just kept adding.

The design doc is by far the largest one to date, it is the same size as a design doc written for a project of about 5 times the budget, and is still growing. During the work, we found at least 3 bugs, 2 integration issues, figured out that we'd need to ask about 5 different big questions of the publisher, fixed 1 stupid coder error (an optimisation that would not have been optimal), and even figured in the designers considerations for tweakability and ease of level creation without him having finished the game play design document.

So, what do i think of the design first, code later aproach? Unbeatable. And we haven't even dropped a line of code yet.

Followup in roughly ten weeks :D

No comments: