Utility-AI para controlar personajes no-jugador de un videojuego
Tesis

Access note
Acceso abierto
Publication date
2024Metadata
Show full item record
Cómo citar
Calderón Saavedra, Daniel
Cómo citar
Utility-AI para controlar personajes no-jugador de un videojuego
Professor Advisor
Abstract
En el desarrollo de un videojuego, una parte importante del juego corresponde a la implementación de entidades o personajes que son controlados por el computador, permitiendo generar interacciones con el jugador más allá de mecánicas y sistemas de juegos. Para lograr eso, es necesario crear un sistema de reglas que dirijan el comportamiento de un actor a lo largo del juego, respondiendo a los eventos que ocurran y a las respuestas del jugador. La capacidad de respuesta de un personaje puede ser muy variable, desde simplemente caminar y entregar un tipo de diálogo, como hasta ser un protagonista en el juego, tomando acciones que dificultan o facilitan el progreso del jugador. Convirtiéndole en un pilar esencial en la inmersión del juego.
La creación de una inteligencia artificial para estas entidades puede resultar desafiante según lo complejo que se quiera conseguir, mientras mayor sea la variabilidad de situaciones que pueden surgir en el juego, y la extensión en la cantidad de pasos que debe tomar un personaje para completar sus actividades.
En la memoria se diseña un sistema de comportamiento basado en objetivos como _Plugin_ para el motor usado, lo que brinda una herramienta genérica para la implementaciones de personajes no jugadores con comportamientos avanzados, permitiendo realizar actividades que requieran de varios pasos, sin importar el contexto en que se haya generado. Esto se consigue modelando el estado de mundo y las acciones como nodos y aristas de un grafo, e implementando un algoritmo de búsqueda de camino como el planificador que logra encontrar una secuencia válida para concretar el comportamiento buscado.
El sistema consigue un buen rendimiento, gracias a la utilización de un thread asíncrono que se encarga de procesar la planificación de los distintos personajes no jugadores del videojuego, lo que permite la ejecución en tiempo real. El comportamiento reflejado por las entidades que utilizan el sistema pueden resultar de buena calidad según la implementación adecuada en el diseño de las acciones y objetivos. Sin embargo, es necesario tener un buen control sobre la cantidad de acciones que se disponen en una planificación, ya que su coste es exponencial a dicho número. Por eso, la solución ofrece varias herramientas para la gestión de las acciones. A pesar de eso, el peor caso sigue siendo muy elevado, lo que puede provocar que un personaje se vea detenido durante un breve lapso de tiempo mientras planifica sus siguientes acciones, se proponen varias alternativas para solucionar el problema.
xmlui.dri2xhtml.METS-1.0.item-notadetesis.item
Memoria para optar al título de Ingeniero Civil en Computación
Identifier
URI: https://repositorio.uchile.cl/handle/2250/204565
Collections
The following license files are associated with this item: