Tom Francis is a former PC Gamer writer and current game developer who offered to give us his thoughts on some of the GDC sessions he's attending this year. You can follow the development of Tom's next game, Heat Signature, at its official site.">
My two favourite topics for talks by developers are AI and failure, so Tuesday’s GDC talk entitled ‘AI Disaster Stories’ was irresistible. The best story came from Tobias Karlsson, currently a software engineer at Microsoft, but who previously worked at DICE programming the bot AI for Battlefield 2.
Like many Battlefields that followed it, BF2 has a medic class who can bring back the dead. If you’re in the ‘man down’ state, but haven’t yet respawned, any medic can whip out their defibrillators, jolt your body, and bring you back to life—saving you a trip, and your team a point.
When Karlsson was tasked with putting together a presentation to show off the AI he was working on for Battlefield’s bots, demonstrating that they could play as a Medic and intelligently save lives seemed like a great example of their abilities. To show that this worked, he spawned one bot to be the victim, and another to be the medic. And since Battlefield 2 can handle lots of bots, he thought he’d show off by spawning a bunch more for good measure—about 10 in total. It’s an empty level, and they’re all on the same team, so everyone just stood around staring into space.
Then, he shot one of them in the head. Friendly fire was on by default in those days, so this kills the medic. All ten surviving medics snap to attention, staring intently at the victim, and all start running towards him. “And as they get closer,” Karlsson says, “This might be a good time to talk about how the defibrillator works.”
“The defibrillator is actually implemented as a very slow firing weapon.” You press fire to use it, your character yells “Stand clear!”, the defibrillator charges up, and then finally fires. It actually shoots out an invisible projectile a short distance ahead of you, and if that hits a downed colleague, they’re instantly revived. And if it hits someone who isn’t downed—usually an enemy—it stops their heart instead of restarting it.
The first medic reached the body, yelled ‘Stand clear!’ and charged his defibrillator. But before he’d even finished the word ‘Stand’, the next medics were yelling the same. Before anyone had actually revived it, the body was completely surrounded by medics, to the point that the others couldn’t even get to him.
The first medic’s defibrillator jolted the victim to life. He promptly stood up and was immediately taken out by the next medic’s defibrillator. “But fear not,” Karlsson says, “we have plenty of medics on hand.”
The victim was immediately revived. And immediately killed. And immediately revived. In fact, the only thing that changed at all was that, since they were all on a slight slope, the body slid a short distance down it each time the ragdoll collapsed. Since all the living medics clustered around it as it moved, Karlsson’s demonstration of the bot’s brilliant AI had become “a huge ball of medics rolling down a hill yelling ‘Stand clear!’”