It’s been a long time since my last blog entry. I do have a pretty good excuse – well, 3 good excuses:
Yep, I am now the proud father of identical triplets 😀
So what’s been happening at work?
Probably most interesting has been the APB closed beta. It’s been fascinating to finally see real players playing the game, to see what they’re saying on the forums and get a fresh perspective. When you’ve worked on a project for as long as we have, it’s easy to get too close to the product. It’s easy to lose sight of which remaining features are essential, making it hard to judge how far away from shipping you are. Worse, it’s easy to lose sight altogether of just how good the product is. You might feel disappointed by the disparity between what you have and the grand vision you had in your mind originally; you might feel frustrated by any flaws in the product, magnified by putting up with them for years.
Taken to extremes, you end up with Duke Nukem Forever – as this great piece says, “Broussard had been staring at the game for so long, he’d lost perspective.” That’s a highly dysfunctional example, but I’m sure many developers recognise the mistakes in there, having made them on a smaller scale. I’m fairly sure that on the original Crackdown team, a few people were genuinely surprised by the overwhelmingly positive reception from gamers and reviewers alike – they’d lost all perspective on how good it was. Time will tell how APB is received, but there’s no question that beta feedback has been highly reassuring for the team.
The other interesting side to beta is the logistical side of launching a live service. If you haven’t seen it before, check out this overview of the organisation behind World of Warcraft. This understated quote says it all: “Operating an online game is about more than just game development.” Clearly, they’re in a league of their own, and nobody else needs the same complexity or scale of operations right now. But at the same time, they’ve set a quality bar that the public now expect new games to live up to. Your average gamer isn’t going to find unreliable service excusable just because the developer’s new to online gaming. They need it to “just work”, and they don’t know or care about the complexity behind it. So we’ve been hard at work to ensure we have a top-notch organisation behind the game itself.
Unfortunately, the beta is closed, so I can’t say anything too specific or talk about the game itself. This is the side to the beta I’m least keen on. I think it’s a consequence of the way games like APB are made: years of development, and huge investment, lead inevitably to a situation where people are terrified to screw up even slightly right at the end. The launch ends up having to be perfect, and there’s a desire to control it down to the minutest detail. Everything is being carefully stage-managed to ensure that things work perfectly; people are terrified of something unfinished being picked up on publicly or in the press in a way that could colour the game’s initial reception. As a software developer, it’s a bit of a shame. I can’t help daydreaming about working on a product that launches early in a minimal form and iterates from there. Everything would be out in the open and the product’s direction could be informed by customer feedback throughout. Sure, there would be rough edges, but the direction and speed would be good, and the end result would be better. It sounds a lot like the world of web development today; I’m not sure whether it could happen widely in the hit-driven games business, but if it happens at all, online gaming is surely the place – where a longer-term relationship with customers, evolving the product together, is far more natural than in the boxed-product single-player world.
On a lighter note, a few of us have been hard at work recently organising our Student Programming Contest. We had a lot of fun doing this last year, so it seemed obvious to repeat it, triplets notwithstanding. Our recruitment team did a wonderful job of promoting the event, helped along by a spiffing poster from one of our concept artists:
So we’ve ended up with 21 teams entering, compared to 7 last year, and we’ve had to insert an extra online qualification round as we don’t have room for everyone at the venue! I’ve been spending a fair bit of time with Google App Engine, building a simple web app to host the contest. It’s obviously essential for the online round, but I’m planning to use it for the onsite final too – should save us from the hell of submitting solutions on USB keys last year – no more losing people’s source code or nearly forgetting who scored what on each question! App Engine itself has been very enjoyable to use, a marvellous resource for anyone wanting to put up a web app on the internet quickly.
The online round is taking place this weekend (20th/21st Feb) and I’ll try to open up the contest platform once it’s done, so the questions and test data are publicly visible. The final is scheduled for 6th March.
Now it’s time to go catch up on sleep 🙂