Flavor text generation for role-playing video games
The PhD defence of Judith van Stegeren will take place (partly) online.
The PhD defence can be followed by a live stream.
Judith van Stegeren is a PhD student in the research group Human Media Interaction (HMI). Supervisor is prof.dr. D.K.J. Heylen from the Faculty of Electrical Engineering, Mathematics and Computer Science (EEMCS).
Role-playing video games allow us to immerse ourselves in virtual worlds and take on the role of virtual characters. To help the player with immersion, these games often contain flavor text: colourful decorative texts, such as item descriptions or dialogues with non-player characters, that help bring the game world and its narrative to life. Flavor text supports the game's narrative, which provides context for the player's actions and events happing in the game.
As an example of flavor text, let's look at action game Diablo III (Blizzard, 2012). In Diablo III, players can find gold and treasure as a reward for slaying monsters and completing quests. One of these treasures is a legendary ring called "Leoric's signet". This rare item has its own flavor text, which hints at the corrupted original owner of the jewel, a recurring antagonist in the Diablo series: "King Leoric had hoped to pass along the symbol of his family's noble lineage to his first son before they met an unfortunate fate."
My dissertation investigates how we can automatically create these flavor texts using techniques from natural language generation. Most natural language generation research deals with creating non-fiction text, such as text for information systems and expert systems, instead of fiction, such as game texts, stories and poetry. Generating fiction has very different requirements from generating non-fiction, and thus requires a different approach.
The flavor text in my dissertation was created with (1) a rule-based text-generator and (2) multiple text generators that build on neural language model GPT-2. Because GPT-2 requires training data to learn the task of flavor text generation, and datasets with video game texts are scarce, I have also developed multiple new corpora with examples of video game text.
Because game text, including flavor text, is often very context-sensitive, I have investigated how we can pass on this in-game context to the text generator, which can then integrate this context in generated artifacts.
I have also looked at ways of playing with the expectations of the reader: if a generated text is random, generic, or contains mistakes: can we make the player believe that that was the generator's intention?