Cold Winter: Development Diary #2 Feature - The Next Level

Cold Winter: Development Diary #2

Online programmer Joe Potter brings us up to speed with the latest highlights.

Article by Joe Potter, Online Programmer (Email)
February 2nd 2005, 03:45AM

It's 8:30am, and I'm in slow-moving traffic in Handsworth. I can hear John Humphrys giving a middle-rank Tory politician some verbal abuse. It's about three degrees centigrade outside, but since the car is nearly overheating it's warm enough in here. The item on the radio is beginning to bore me; it's become a gladiatorial battle of rhetoric. The honourable member is no longer giving useful answers; he's instead trying to dodge John's skilled attacks. I change to Radio 2, replacing the aggressive Welsh voice with a relaxed Irish drawl. Fortunately, Mr. Wogan decides at this moment to put a sock in it, and starts playing a record I first heard when I was a teenager.

I park in the streets near the office and walk the rest of the way. It's cold, but it's only ten minutes. The entrance is being completely renovated, so we have to walk round to the back door to get in. I note that the glass panels all seem to be in place, so presumably we will have less pneumatic drilling from now on. The office is on the ninth floor, and having walked from the car I'm feeling a little out of breath, so I take the elevator. It stops on the fifth floor, then the doors don't close. For a few minutes we play around pushing the doors open again until they finally close completely, and the lift starts to move again.

I'm at my desk, booting up my PC. We've nearly completed a 'beta' version of the game, a very significant milestone. At this stage there's a lot happening. Change has to be carefully handled, to avoid introducing new issues while trying to fix old ones. My e-mail in-box is stacked full of letters. Most are from the bug tracking database, telling me the latest problems with the multiplayer game. In between them I've got the threads of e-mail conversations between small groups of people. Our audio man is asking me about the conventions we can use for commentary samples, which needs to be bounced off our resource-loader man. I've got a response back from GameSpy about a technical query. I've got the notes about last night's full rebuild, which seems to have problems of its own. My brother wants to know what to get our parents for Christmas.

The testing lead has started work. I know this because my e-mail is beginning to fill up with new issues. We've got the response of the technical review from GameSpy about the use of their service; each separate bullet point they raise is entered into the bug database so I can deal with them individually. I scan through looking for troublemaking issues, and my heart sinks when I find some. They aren't hard to fix, but they will make this version incompatible with previous versions. This will make testing more difficult. I have to deal with those issues first, because I need to make sure everyone's running compatible games, and the sooner I do it the sooner I can test and distribute it.

It's lunchtime. Sometimes I work through lunch, but often I want to make sure I get a proper break. I stretch my legs a bit, get a cup of tea, play a few rounds of first-person shooters. There's quite a bit of choice here; Half-life 2 multiplayer is currently doing the rounds, but there's still a lot of Quake going on. I used to play Quake a lot, but these days I've taken a liking to Planetside.

After lunch I want to test the GameSpy fixes, so I bully a few programmers off their development kits long enough for me to fire up a few copies of the game. This is probably the hardest part of on-line game development - actually trying it out! I convince one of the programmers to press buttons on his pad and shout out what happens while I gather up a cordless pad and two other long-cabled pads so I can work three machines from one location. I look ridiculous, standing in the middle of the coder's area with two headsets on and pad cable wrapped around my left arm.

The Gamespy fixes look solid, I'll let the testing department kick it about to prove it. Instead I want to have a quick browse through the weapons. Play tests have given me considerable feedback about various weapons, usually outraged. "That rocket launcher is just overpowered and needs to be fixed!" Translation: I got killed with the rocket launcher. "The shotgun does no damage at all!" Translation: I got killed by someone I shot with the shotgun. Some things could be tweaked a little here and there, and I forward my discoveries to the design team. In general the balance is holding well - the feedback is simply reflecting the passion the testers feel for the game.

I spend another hour or so trying to recreate various scenarios from the bug database. Bugs with on-line play tend to be quite tricky things to do with precise conditions of internet delay and synchronisation between the machines, so have a low rate of occurring. I get some of the obvious ones to pop up, which I can then fix, but some of the others just don't want to happen for me.

At half past four there's a scheduled multiplayer test session. I send out an e-mail to everyone to get the latest game and data from my machine and go on-line. A few of the programmers bow out of the session, since we're so close to beta, but we still get a half-dozen people to run round and shoot each other. I want to try out the more tricky game modes, but some people (well, just one person) wants to select the Deathmatch/Heavy Weapons mode and fire rockets all the time ... since I know he will end up working overtime I indulge him a little break from work.

In the summer, when the deadlines were not so looming, I'd head home just after six. Traffic would be moderate, and "I'm Sorry, I Haven't A Clue" would be on the radio. For this last week I've been staying 'til after seven, just to keep ahead of the game. I don't want to be surprised by nasty bugs forcing me to work a 36-hour day at the last second, and the way to do that is to do the work early. Tonight I find myself wrestling angrily with a piece of recalcitrant code, and end up leaving at half seven. The streets are dark and cold, but at least the ground isn't icy.

When I get home, my cat Cheats is waiting for me. She's scolding me for turning up so late and not having her food ready on time, but since I don't speak cat I can weather this storm of indignity. To relax, I play on-line games on my PC at home, but I can't stay up too late - because I have to do all this again tomorrow. It's not a burden though; even with the hours, and the pressures, it's still the work I've always wanted to do.

displaying x-y of z total