Thesis Paper Download
gutierrez_thesis.pdf |
Thoughts
As my interest in AI programming grew, I found myself eyeing a particular challenge that I had run across as a player - what to do about companion AI/NPCs. Specifically, how to make them more fun to play with.
As games advance in both gameplay and storytelling, the role of companion NPCs has become significantly more prominent. These NPCs are vital for fleshing out the story and world that players experience. Having interesting companions and meaningful interactions with those companions can elevate a player's experience and connection to the game they are playing.
Despite the advancements in use of companion NPCs as vital story elements, many old complaints about their presence persist - particularly when it comes to the gameplay experience. Asking players about companion NPCs can provoke strong reactions. Players often feel like the companion fails to understand their intentions, or they mismanage resources. Players feel like companions behave in ways that they can't understand, and feel like the companions are an obstruction, or a high maintenance object they have to babysit.
The companion NPCs find themselves trying to thread the needle between all these issues. To address some of the above, many games have granted special abilities to the NPC, such as effective invincibility or invisibility to smooth things over. Many players quickly figure out these special abilities, and might be tempted to exploit them, which may come at a cost to immersion.
For my thesis, I wanted to explore the challenge of having the companion NPC play without any special extras, instead the NPC would have to decide on the best course of action based on its health, position, and mana, as well as the player, who has the same resources. The goal was to create an NPC that was fun to play was as an active participant in the moment to moment gameplay. Instead of being overpowered or a liability, the goal was to have a companion that the player could cooperate and synergize with.
My approach was to have the NPC evaluate the situation as it changed, and pick the best response without requiring lots of special case programming. With that desire in mind, I landed on fuzzy fitness as the technique to try for this project.
Through my thesis project, I improved my AI development techniques, and found a lot of potential for a unique, compelling experience between a player and an NPC. Pairing what I've learned here with collaboration between programming, art, and design departments is something I would certainly like to try sometime during my professional career.
As games advance in both gameplay and storytelling, the role of companion NPCs has become significantly more prominent. These NPCs are vital for fleshing out the story and world that players experience. Having interesting companions and meaningful interactions with those companions can elevate a player's experience and connection to the game they are playing.
Despite the advancements in use of companion NPCs as vital story elements, many old complaints about their presence persist - particularly when it comes to the gameplay experience. Asking players about companion NPCs can provoke strong reactions. Players often feel like the companion fails to understand their intentions, or they mismanage resources. Players feel like companions behave in ways that they can't understand, and feel like the companions are an obstruction, or a high maintenance object they have to babysit.
The companion NPCs find themselves trying to thread the needle between all these issues. To address some of the above, many games have granted special abilities to the NPC, such as effective invincibility or invisibility to smooth things over. Many players quickly figure out these special abilities, and might be tempted to exploit them, which may come at a cost to immersion.
For my thesis, I wanted to explore the challenge of having the companion NPC play without any special extras, instead the NPC would have to decide on the best course of action based on its health, position, and mana, as well as the player, who has the same resources. The goal was to create an NPC that was fun to play was as an active participant in the moment to moment gameplay. Instead of being overpowered or a liability, the goal was to have a companion that the player could cooperate and synergize with.
My approach was to have the NPC evaluate the situation as it changed, and pick the best response without requiring lots of special case programming. With that desire in mind, I landed on fuzzy fitness as the technique to try for this project.
Through my thesis project, I improved my AI development techniques, and found a lot of potential for a unique, compelling experience between a player and an NPC. Pairing what I've learned here with collaboration between programming, art, and design departments is something I would certainly like to try sometime during my professional career.