“Access violation,” Kevin muttered, rubbing his burning eyes. “Null pointer. Of course. What’s null? The world? The sky? The rain?”
He looked down at his hands. They were becoming transparent at the edges, like sprites losing their alpha channel. The world around him—the server racks, the energy drink cans, the posters of City and Knight —was pixelating, breaking into larger and larger blocks. The last thing he saw was the reflection in the dead monitor: his own face, but with a thin, lipless smile that wasn’t his.
“No,” he whispered. “No, no, no.”
RenderingThreadException: Tried to render Batman beyond world bounds.
“What?” Kevin said. World bounds? The level had a skybox, collision boundaries—it was impossible. Unless the thread had stopped reading the level geometry and started reading something else. Something behind the screen.
The screen went black.
And the game never crashed again. Because the rendering thread had found something to render: a lost debugger, forever falling through the memory of a broken world, trying to fix a bug that had become a man.
He’d been at it for nineteen hours. The final patch. The one that would fix the last of the Arkham Asylum PC port’s bugs before the studio washed its hands of it forever. He’d recompiled the rendering engine, smoothed the PhysX cloth physics, even patched the infamous “triple-click batarang crash.” And now, just as he’d launched a final test playthrough—Batman standing on the rain-slicked gargoyle outside Sprague’s office—the world had ended.