En The Elder Scrolls V: Skyrim, seguir a un zorro salvaje era sinónimo de encontrar un botín, pero no fue a propósito; a los desarrolladores les costó bastante tiempo entender por qué esto sucedía, y lo contaron en Twitter esta semana, acompañando el anunció de una remasterización del juego
- 5 minutos de lectura'
The Elder Scrolls V: Skyrim es un videojuego de rol presentado hace una década que hoy es un clásico del género. Disponible para PC, Xbox 360 y PlayStation 3, nos lleva a un mundo sumido en una guerra civil tras el asesinato del rey de Skyrim; esto generó el enojo del dios Alduin, que transformado en dragón llega para vengarse, y que deberá ser detenido (cómo no) por nuestro personaje. Tal como se anunció esta semana, el 11 de noviembre próximo saldrá una versión actualizada para las nuevas consolas.
El anuncio de la versión remasterizada:
Debemos recorrer la región, cumpliendo misiones intermedias y viviendo múltiples aventuras en un mundo de impronta medieval. Y con un ocasional compañero, un zorro, que aparecerá de vez en cuando; los expertos en el juego saben que seguirlo implica llegar a un lugar donde se esconde un jugoso botín. Pero según tuiteó Joel Burgess, uno de los programadores del juego, este hecho no fue a propósito: más bien, se trató de cómo la inteligencia artificial del zorro, dentro del juego, interpretaba las órdenes básicas que tenía.
Según Burgess, se enteraron del hábito generoso del zorro por comentarios de los usuarios, algo que los sorprendió, porque no era parte del guión. En un juego, lo que hacen los diferentes NPC (personaje no jugador, por sus siglas en inglés) está guionado: algunos buscan entablar diálogo con el protagonista, lo atacan, lo observan y se defienden si son atacados, o escapan. Esta era la orden para el zorro: escaparse si el protagonista se acercaba lo suficiente. Pero nadie sabía por qué al escaparse se iba directo a los tesoros.
Un zorro escapando hacia un tesoro
El desarrollador del juego explicó que Skyrim, como otros juegos, usan algo llamado navmesh: un mapa que define, en el mundo virtual del juego, por dónde pueden moverse los personajes (para, por ejemplo, que no se choquen con paredes o árboles, caminen por el agua, etcétera). Facilita la tarea de la inteligencia artificial que gestiona el mundo virtual.
Skyrim uses something called 'navmesh' for AI navigation.
— Joel Burgess (@JoelBurgess) August 18, 2021
For non-dev folks, this is an invisible 3D sheet of polygons that is laid over the world, telling AI where it can and cannot go.
This red stuff is navmesh. You can read about it here: https://t.co/3vutoKhEHk pic.twitter.com/W37PHbxeDi
El zorro, un personaje muy simple, solo tenía una misión: escaparse del usuario, para dar la idea de un animal salvaje y tímido. Según Burgess, cada elemento del juego oscila entre procesos intensivos y de baja prioridad, en función de qué relación tiene, en cada momento, con el personaje; si está lejos y no tiene posibilidad de interacción, es baja prioridad; todo lo que está cerca es alta prioridad. Así que el zorro, cuando era avistado, se transformaba en un proceso importante, usando toda la cartografía disponible (ese navmesh de polígonos que le dice a la computadora por dónde pueden moverse los personajes, si están lo suficientemente cerca del jugador para reaccionar, etcétera).
To contrast, there's also "Low Process" - used for stuff like NPCs walking a trade route across the world.
— Joel Burgess (@JoelBurgess) August 18, 2021
These are only updated every several minutes, and position is tracked very loosely.
The bandit stabbing your face, however, is running nav stuff many times per second.
El navmesh, explica Burgess, está hecho de múltiples triángulos (la figura geométrica básica en todos los videojuegos) de tamaño variable: donde es importante el detalle, se usan muchos polígonos (típicamente, una habitación donde hay objetos con los que interactuar, etcétera). En las zonas donde da todo un poco lo mismo, y es más una cuestión escenográfica (el aire libre, el camino sin importancia entre dos puntos clave) el navmesh está hecho de triángulos más grandes.
When you stumble across something like a camp, however, navmesh gets way more detailed. Added visual detail means added navmesh detail, and if we're placing NPCs of any kind, we also tend to add even more detail.
— Joel Burgess (@JoelBurgess) August 18, 2021
So Points of Interest = big number of small triangles. pic.twitter.com/uaeE4TZssS
El zorro tenía como única misión alejarse del protagonista, y hacerlo… a 100 triángulos de distancia. Los desarrolladores lo pensaron como una medida fija de distancia (100 metros, por ejemplo), pero la inteligencia del juego pensaba en triángulos (que, como se dijo, tienen un tamaño variable en función de la importancia del lugar), y en cuál era el camino más corto para cumplir su objetivo: un buen ejemplo de la literalidad con la que ejecutan sus órdenes los algoritmos.
El camino más rápido para cumplir la misión (moverse cien triángulos) inevitablemente llevaba a lugares con tesoros, zonas que los desarrolladores del juego habían hecho con más detalle y, por lo tanto, usando más polígonos para darle forma. Como había más triángulos, para el algoritmo del juego eran el mejor lugar posible para cumplir con sus órdenes. Así fue como los zorros se transformaron, sin quererlo, en métodos sencillos y efectivos para encontrar un botín.
So foxes aren't leading you to treasure - but the way they behave is leading them to areas that tend to HAVE treasure, because POIs w/loot have other attributes (lots of small navmesh triangles) that the foxes ARE pursuing.
— Joel Burgess (@JoelBurgess) August 18, 2021
To players, however, it's the same thing.
Burgess considera que este es “un caso de jugabilidad que NADIE diseñó emergiendo del caldero burbujeante de sistemas superpuestos”, tal como indicó en el hilo de Twitter donde contó la anécdota; lo hizo a partir de otra historia sobre Skyrim que contó otro desarrollador, Nate Purkeypile, sobre las dificultades de programar el movimiento de una carreta al inicio del juego, que tendía a cruzarse con un elemento contextual del juego, una abeja, que había sido programada de tal forma que nada la detenía. Así que en un momento la carreta avanzaba por el camino y se encontraba con la abeja, a la que no se podía atropellar… así que la carreta intentaba superarla ascendiendo al cielo. Todo esto fue corregido en la versión final del juego, pero como indica Purkeypile es un buen ejemplo de cómo una decisión sobre las características que tendrá un elemento del juego puede influir en forma inesperada sobre todo el resto.
Otras noticias de Videojuegos
- 1
Renault Gordini modelo 2025: así sería el histórico vehículo, según la IA
- 2
Histórico: China repavimentó casi 160 km de autopista con máquinas autónomas
- 3
Las 5 señales que muestran que tenés una mentalidad positiva, según un análisis de IA
- 4
Se termina el Impuesto PAIS: cuánto costará un iPhone en el exterior desde diciembre 2024