Making Games Classics: Quest Design in The Witcher 3: Wild Hunt

The Witcher 3

Filling an open game world with quests is a big challenge. Philipp Weber explains how the quests in The Witcher 3: Wild Hunt are created and what is required in order to create a living and, above all, authentic world of The Witcher 3.

Disclaimer: This article was first published in issue 06/2014, which was released in October 2014.

The protagonist of The Witcher 3: Wild Hunt is Geralt of Rivia, a witcher and hero of a successful book series in Poland, which enjoys the status of a national treasure and which I can highly recommend to every sophisticated fantasy fan. The German translation is exquisite since the Polish author speaks very good German and quality-checked the translations. Therefore, one of the prerequisites for every quest designer at CD Projekt Red is to know all the books and game prequels by heart.

Original novel: advantage and challenge in one

The book series and the game prequels grant us a lot of advantages, but also pose some challenges because Geralt already has a set character and the world a set lore from which we can draw. Geralt is neither a charismatic hero nor a mean villain; he’s not a simple errand boy and generally not interested in other people’s business as long as he isn’t getting anything out of it. So when we’re at the beginning of a quest and think about the story, we always have to ask ourselves if Geralt would want to take part in it at all. What would his motivation be? How would he react?

When designing the quests, the character traits of Geralt the Witcher and his motives of action are taken into close consideration.

But above all, we have to comply with the world and the demand of The Witcher. A good quest has a meaning; it is more than just to entertain the player, and that’s our goal, too.

I personally worked on so-called minor quests which don’t necessarily have a big impact on the big comprehensive storyline, but make the world and its people look lively and obviously entail certain consequences. And each of our quests needs to have a consequence. This doesn’t necessarily mean that after each quest a village either celebrates or burns down, but sometimes there are small changes here and there to show the player that he did change the world to a small degree – for better or worse.

Now, for the first time in the history of CD Projekt Red, The Witcher 3 is an open-world role-playing game. It wasn’t a decision that was rushed because open world was en vogue; it has actually always been our dream ever since Geralt first appeared in a video game – and now, thanks to our technology, we’re ready for it. But we also made it clear from the beginning that we wouldn’t compromise. One of the biggest strengths of the series has always been an intense and gripping story, and this won’t change, but obviously it poses a challenge that we’re happy to face.

For the first time, The Witcher 3 offers an open game world. Filling this world with quests posed a new challenge for the team.

First steps

There are many approaches to creating a quest, which can substantially differ from each other. It depends on the style of the individual quest designer and what type of quest we’re dealing with. The main quests are based on the fundamental structure of the comprehensive story and are a compelling chapter on their own. But since I was working on the minor quests, I will use these as an example.

The first step of a quest is simply – who would have thought so – an idea. This idea can be taken from a story that we thought of under the shower, but also from something that we see or read. Sometimes a quest also starts with a gameplay idea followed by the story. For me personally the former was mostly the case. I sat down in front of a blank piece of paper and wrote down synopses of the stories that I would like to tell in our game. We collect these stories in our design documents. So over the course of the development time, we collect hundreds of ideas of which only a small part actually makes it into the game.

When we’re convinced of an idea, we first talk to our colleagues about it: Does the story make sense? What is the gameplay challenge? What significance does it have? What follows is an iteration step where the idea is fine-tuned until it reaches a phase where we can talk to our Lead Quest Designer about it. Eventually a decision will be made whether the quest has enough potential to make it into the game; whether it needs to be revised or whether it should be dropped completely. Sometimes an idea is just not good enough, the gameplay isn’t right or the story doesn’t have the effect on the player it’s supposed to have.

Implementing the quest

If a decision has been made in favor of a quest, it is ready to be implemented into the game. In terms of implementation, all Quest Designers have their own style and their own order of getting things done.

I always take care of the logistics first. A quest in a game needs folders where all characters, dialogues etc. are stored. We also create folders in the level itself as well as layers which contain all kinds of objects that we need in the game world. Since at this stage we already have quite a clear picture of the quest, it’s relatively easy to prepare everything.

The dialogue tool for The Witcher 3 works similar to a movie script; in this case it’s visualized through the Redkit dialogue editor of The Witcher 2: Assassins of Kings.

Since most ideas and stories for minor quests come from the Quest Designers themselves, we also write the placeholder dialogues. Sometimes they may be very general, other times we may have something special in mind; that’s when our writing gets very detailed. We then use the dialogue tool in our editor, which partly works similar to a movie script. We set the characters, we can add short descriptions and obviously we can write the dialogue itself. Only in exceptional cases we interfere with camera, dialogue animations, mimics etc. We usually calculate a few standard camera angles, and the dialogue will be edited later by our Cinematics team. With The Witcher 3 our tool for dialogues became so powerful that at the end even we could hardly tell cutscenes from dialogues any more.

Level structure

Once the basic structure is set, all characters, monsters and items exist and the dialogue has been written, we start working on the level itself. Since we want to create a living world, our quest givers won’t just be standing at a fork day in and day out waiting for the glorious hero to arrive. The people in our world lead a life of their own for which we can assign them various actions that they can either carry out randomly or according to the time of day. For example, the village blacksmith gets up at sunrise, sits down at the table with his wife, eats something and then goes to work. He may take a break here or there, smoke a pipe on the bench, and after work he visits the tavern. At night he goes home and goes to sleep.

All characters in The Witcher 3 have their own daily routine. For example, you can meet a potential quest giver during the day at work or at night at the tavern.

In order to achieve this, we use so-called action points. Every action the blacksmith can do is represented by an action point in the world. With a special, user-friendly tool we can set how long these actions are supposed to last, whether they are to be carried out randomly or continuously and at what time in the day. Of course, an NPC can also have different phases. For example, if the blacksmith’s wife leaves him in the course of time, he might be spending more time at the tavern from then on. He might also move to a different town or even end up on the street. And maybe we’ll find him there and get a new quest.

The NPCs’ daily routine is controlled through so-called action points (to be seen here in the Redkit to The Witcher 2).

The quest phase

Once the NPC leads his own individual life and everything has been prepared in the level, we start creating a quest phase where we can set what happens when and where in the quest. We trigger events, start dialogues, set diary entries and much more. We can do all this without having to leave our editor since all scripts are represented as nodes that can be connected in any way. It’s important though, especially for longer quests, to be well organized.

We combine all small settings that we use, for example, to simulate the simple life of the blacksmith in a separate phase which we can connect to others. That way we avoid always having the entire quest on the screen in front of us, which would otherwise soon look like the Tokyo subway map. Also, every node that isn’t self-explanatory at first glance should be commented. This is useful for your own orientation from the get-go, but also for other quest designers and QA to understand what happens at what time in the quest.

The simplified course of a quest as displayed in the Redkit to The Witcher 2.

Under close scrutiny

Once the prototype of a quest has been created, it is thoroughly tested. Eventually, when the sequence of the quest is right, everything works smoothly and the quest is fun to play, we sit down with the Lead Quest Designer to play it without commenting on it. Should there be a problem following the quest at this point, it obviously needs to be revised. At the end, the quest will be rated. How does the story come across in the game? Is the quest fun to play? Is it well balanced? Usually some bugs still need to be fixed here and there; sometimes we also come up with a new twist to the story or a new idea that works better. Then there will be some new iteration until the quest finally reaches a stage where it can be presented.

Once everything runs smoothly, the conversations will be presented to the story team who then revise and rewrite them. There might be some iteration again. Sometimes at this stage when we work on the story, we come up with a whole new idea which we can then implement upon consultation with the Lead Designer. Of course it can happen that we’re going back and forth; sometimes we suggest another change to the dialogues written by the story team, and sometimes the quest will be changed accordingly.

Once everything is ready, the quest moves one level up and gets played by the Game Director, thoroughly checked by QA and continuously amended by us. It also gets rated again. Every quest that ends up in the game is tested, rated and fine-tuned hundreds of times. Only the best ideas make it into the game.

Working with other departments

There are still some more stages for the quest to go through. For example, sound will be added, and we then test how that affects the quest. Does the sound or the quest need to be amended? Maybe we need a special character that we have to create first; or maybe we need items or locations that we have to build first. Each of these steps, as marginal as they may be, requires new changes to the quest. All these steps are checked by QA in order to avoid new bugs to occur.

We also have to work closely with other departments. If a Character Artist is to create a new character, he obviously needs to know what kind of character it’s supposed to be. What’s their background story? What’s happened in their life?

Level Designers and Environment Artists, too, need this kind of information. For example, if our blacksmith has been left by his wife, you can probably tell from the look on his face. A reddened nose, bloodshot eyes and a messy house can tell it all without needing any words.

Basically, a quest is never completely finished for a long period of time. Here and there a system or a location in our game may change, and obviously there may be bugs that we would never see coming. At the end of the day, in the finished game, there will be a quest that was created by numerous people, that was continuously improved and that therefore will deliver the best possible experience.

Creating a living world

We’re creating a big, open role-playing game, hence we want to create a world that is worth exploring every nook and cranny of. Every village has its own individual people who follow their daily routines. And every village can drastically change in the course of the game – because what we don’t want is a static world. This becomes evident in small things, but there are also large-scale consequences and sometimes even entire regions may change completely.

In such a living world we want people to react to their environment. If it starts raining, they would go inside or seek shelter. And they would not only react to Geralt but also to animals or even monsters.

The dynamic weather system affects people’s behavior: If it starts raining, they would go inside or seek shelter.

As Quest Designers we also work on things that aren’t actually perceived by the player as classic quests. We make sure all people have their daily routines; we fill ruins and dungeons with content even when they’re not part of a quest; we create puzzles and encounters in the game world and generally turn it into a place where the players can get carried away.

Part of the Quest Design is to fill the world with encounters that aren’t actually perceived by the player as classic quests.

The open and living world obviously also affects the Quest Design. In The Witcher 1 and 2 we always knew where the players came from, how strong they currently were and what they’ve experienced. In The Witcher 3, Geralt is dropped into the game world right at the beginning where he can do whatever he wants. Players who like to explore a lot may find high level content very early on in the game, but are likely to die quickly since we deliberately decided against level scaling.

Authentic game world as a challenge

At Gamescom people were able to see Novigrad, the biggest town in our game and the world of The Witcher. Novigrad is a cosmopolitan town with different neighborhoods and people. It was a big challenge to create the right authenticity in a role-playing game since once again we didn’t just want puppets to march through the streets, but instead real people, elves, dwarves and halflings. A sailor at the harbor who spends his days hauling boxes and pays a visit to the brothel at night; in the noble neighborhood the gentlemen are mocking the travelling entertainers; services are being held in front of the big temple; during the day, beggars are trying to make a few bucks, while at night they hide from gangs that are out to seek trouble.

The many people of Novigrad are controlled via a tool that allocates random action points to them.

It wasn’t an easy task to implement all this in an authentic and smooth way and the integration also required new, individual tools. Now it’s fairly easy for us to integrate the thousands of people of Novigrad since the tool allows us to allocate random action points to people that they can choose to their liking.

For example, when we have a market woman who is supposed to be at her own stall for most of the day, we can easily set this by allocating the market stall just to her. However, if there’s a bench she can relax on, we obviously also want other people to be able to use this bench. Every person in Novigrad can have their own »password«, a so-called tag, but also a general tag for the whole neighborhood. We can then easily control how high chances are for the woman to use this or that tag. That way we can create a whole neighborhood in Novigrad within a short amount of time. Since we have an open role-playing game without loading times, it can happen that the player follows people through the entire town. We might meet a travelling trader at the market who later in the day sets up camp at a lake on the outskirts of Novigrad.

At the end of the day our goal is for the player to remain immersed in his world. Comprehensible motivations, people leading their own lives, decisions bearing consequences and of course gripping stories are the most important tools of a Quest Designer to reach that goal.

Philipp Weber


About the author

Philipp Weber
is Quest Designer at CD Projekt Red.

Philipp has no education in game design, but joined the industry through the modding scene. When CD Projekt published the so-called Redkit, an editor for The Witcher 2, he registered for the closed beta. At the end of the beta he won a competition that won him a witcher sword and the contact with CD Projekt. Last summer he was invited to Poland for a 3-month internship in Quest Design, and in April 2014 he was fully hired at CD Projekt Red where he designs and implements quests for The Witcher 3, creates the community in villages and towns and generally implements a lot of what belongs to a lively game world. In his spare time he still works on his mod »Lykaon« which helped him to get his dream job.