A Witcher dev accidentally sent one of the RPG's most important characters to the shadow realm, and a tester had to play the entire game again to save him

The Witcher
(Image credit: CD Projekt Red)

The original Witcher game hit a major testing roadblock after one of its designers accidentally consigned a notable NPC to the gamedev shadow realm to prevent him from ever showing up in a climactic cutscene.

Artur Ganyzyniec, lead story designer on The Witcher 1, has recently been playing through the first game in the series, adding his commentary as he goes. During the final episode, which aired earlier this week, he recounted the story of a major bug that took hours of testing to fix.

Ep. 26 –The Witcher with a designer's commentary: Epilogue - YouTube Ep. 26 –The Witcher with a designer's commentary: Epilogue - YouTube
Watch On

Normally, Ganyzyniec explains, that black screen is used at the start of every cutscene to teleport the relevant characters into the right place. Once they're there, the scene begins, but this time, "the black screen didn't disappear and the dialogue didn't start." To work out why, the devs eventually discovered that Yaevinn wasn't in the scene, so it couldn't start. And he wasn't in the scene because the game thought he was dead.

"We were stuck for a moment," Ganyzyniec says, "and I started thinking 'when was the last time we saw Yaevinn?'" The answer was in a separate cutscene at the end of the game's third chapter, hours before the events of the epilogue. Much debugging later, the devs discovered that at the end of that scene, instead of getting the simple command to despawn, Yaevinn had been given a different command.

"It was a deprecated comment that shouldn't be used anymore," Ganyzyniec explains. Whether by mistake, curiosity, or simple boredom, the scripter had attached a command to Yaevinn that said something like "'despawn the character, mark the character as dead, and make sure that the character never spawns again'." It was an error not helped by the fact that the difference wasn't mentioned in the name of the comment, but was buried "somewhere deep in the documentation for the scripting language."

Once uncovered, the fix was relatively simple, but checking that the solution had actually worked was much more time-intensive. Ganyzyniec outlines how, at that point in production, any changes to the game corrupted all associated saves, which meant that one unfortunate tester had to play the entire game up to the epilogue just to check if Yaevinn would actually load into his cutscene. He did, but "it was hours of play just to test if this one bug was fixed."

Yaevinn never appears in the Witcher series after his epilogue cutscene - his role is primarily taken over by Iorveth in The Witcher 2, but the Scoia'tael are much smaller figures in The Witcher 3. His absence through the rest of the trilogy is a little strange given his role in certain branches of the plot, but perhaps that's got something to do with The Witcher 1 team's apparent desire to set up sequel-relevant story beats without actually consulting the writing team, which is what happened at the end of Geralt's first adventure.

OG The Witcher lead thinks the Wild Hunt "will probably need to be changed" for the RPG's new remake because they were originally seen as wraiths – not "elves in armor"

Ali Jones
Managing Editor, News

I'm GamesRadar's Managing Editor for news, shaping the news strategy across the team. I started my journalistic career while getting my degree in English Literature at the University of Warwick, where I also worked as Games Editor on the student newspaper, The Boar. Since then, I've run the news sections at PCGamesN and Kotaku UK, and also regularly contributed to PC Gamer. As you might be able to tell, PC is my platform of choice, so you can regularly find me playing League of Legends or Steam's latest indie hit.

You must confirm your public display name before commenting

Please logout and then login again, you will then be prompted to enter your display name.