No Man’s Sky pasó a la historia por ser uno de los juegos más esperados del 2016 y a la vez, uno de los que más desilusionó. El objetivo de esta nota no es ahondar en los puntos que hicieron que NMS falle ante la mayor cantidad de gamers que accedieron al juego, sino de dar mi opinión acerca del gran problema que enfrenta todo juego con contenido generado proceduralmente. Especialmente cuando casi TODO en el juego pareciera ser creado de esa forma.

El propio Sean Murray habló acerca de que cualquier otro juego y su física son “falsas”. Sostiene que cuando estás en un planeta, alguien lo pensó y dibujó de cierta forma. Cuando el personaje mira al cielo, ve las estrellas dispuestas como un diseñador creyó que era estéticamente apropiado y llamativo. Cuando anochece, es porque hay un ciclo programado que de a poco transiciona en otra iluminación. En No Man’s Sky sin embargo, cada lugar al que vas es nuevo e infinito. Los límites no existen y podés continuar descubriendo criaturas, plantas y planetas para siempre.

Ahora, veamos el problema real de este contenido, más allá de la historia del juego, objetivos o actividades para realizar: ¿cómo motivamos a un jugador para querer recorrer ese universo muchísimas horas sin sumergirlo en la monotoneidad visual?

tumblr_ocmlrdglxx1tleu51o1_1280

Saber la forma en la que una persona cambiaría aspectos de un objeto o criatura para que se vea diferente y “bien” es fácil. El problema es enseñarle este criterio a un sistema automatizado. Los humanos somos buenos en estimación y en síntesis por el simple hecho de que podemos basarnos en situaciones pasadas. Sabemos qué se ve “bien” y qué se ve “mal”. Computadoras en cambio, sólo comprenderán lo que les enseñes, o en base a estimaciones de problemáticas ya experimentadas y resueltas. Frente a la creación procedural de elementos, muchos problemas requerirán conocimiento implícito (más del que pensamos) pero la máquina se ve obligada a improvisar gracias a su capacidad de cálculo y generación de posibilidades (y porque así funciona!). Por este motivo, se le otorga al dispositivo una serie de métodos generativos para que pueda tener las siguientes herramientas/habilidades:

  • Agrupación de sets de opciones.
  • Creación de estructuras.
  • Codificación de reglas/condiciones para  generar opciones.
  • Creación de variaciones en una estructura.
  • Capacidad de “preguntarse” a sí misma si se cumple una condición.

Al momento de crear contenidos en base a un algoritmo, es posible predefinir determinadas condiciones para que el objeto resultante no sea algo totalmente descabellado. Por ejemplo, si estamos generando exclusivamente animales cuadrúpedos entonces sabremos que algunas de las condiciones que deben cumplirse es que sus puntos de apoyo le permitan sostenerse en pie, y que obviamente tenga cuatro extremidades a modo de patas. Si la computadora generara algo que no cumple con estas condiciones entonces generará una nueva hasta que pase el test (método generate and test). Ahora, podríamos estar en un problema si colocamos demasiadas condiciones a cumplir porque todos los cuadrúpedos generados serían más o menos similares y entonces perderían interés visual. Por otro lado, si colocas muy pocas condiciones a cumplir entonces pueden aparecer criaturas extrañas, con variables que a un ser humano nunca se le hubiese ocurrido generar. Hay tantas pero tantas opciones que “no querríamos que sucedan” al crear cuadrúpedos, pero son tan difíciles de explicar y volcar en condiciones… algo así como “voy a saber lo que se vea horrible cuando lo vea”.

nomansskycreature
Dafuq

Enfoquémonos en el caso No Man’s Sky. Hay un algoritmo que es capaz de generar billones y billones de planetas, con infinitas posibilidades en cada uno. Todos son diferentes, pero qué tan diferentes? Cuando el jugador recorre cada uno de ellos, ¿los percibe diferentes? A veces cambiar sutiles diferencias entre objetos no es suficiente para que el universo resulte atractivo e innovador. Por ejemplo, yo podría servir 10,000 platos de fideos y posiblemente ninguno se vea idéntico al otro en cuanto a disposición de la pasta (mmm pasta). Sin embargo, son diez mil platos de fideos, y todos los percibimos de la misma forma. El jugador de No Man’s Sky entonces se encuentra con… billones y billones de platos de fideos. Algunos con salsa, otros con crema, pero fideos al fin y al cabo. A continuación, un video que muestra 50 planetas diferentes de NMS en siete minutos, para ilustrar un poco mi ejemplo:

No Man’s Sky falló por variados factores, y la monotoneidad procedural no fue el principal desencadenante de la decepción. Sin embargo, creo que es un factor que contribuyó muchísimo a que muchos jugadores, al principio interesados, perdieran la curiosidad luego de varias horas de juego por sentirse estancados en planetas que se veían máaaas o menos parecidos. Me incluyo en ese grupo:  cuando finalmente logré que despegara mi primera nave me sentí bien, feliz, sorprendida y lista para la aventura. Pero luego de algunas horas todo se volvió repetitivo. No bastó cambiar la paleta cromática y la forma y tamaño de los animales, precisaba algún factor sorpresa adicional.

beast5En general, los casos de contenido generado proceduralmente, poseen dos tipos de assets u objetos del juego. Uno está ligado a la esencia, a lo “único” que se ve respecto a otro. Por otro lado, existen los objetos que percibimos como diferentes, pero de una misma familia.

Todos los assets generados proceduralmente pueden clasificarse al compararse entre sí. En este proceso de percepción existen dos caminos: Percepción de unicidad y Percepción de diferencia. Un ejemplo simple sería: un jugador que visita dos planetas diferentes, en instancias diferentes. Si el segundo es radicalmente diferente, lo percibirá como un objeto nuevo. Si en cambio nota muchas similitudes con el anterior (morfología, paleta cromática u animales, por ejemplo), entonces lo sentirá como de la misma familia, similar aunque no idéntico. Existen algunos principios estéticos que hacen que algunos objetos sean más únicos y memorables que otros, con características identificables a la percepción humana. Por ejemplo detalles que hagan notar que variados objetos tuvieron una historia o proceso detrás: una nave con partes de su cubierta oxidadas, minerales que no puedan ser explotados por el rastro de una lluvia ácida super agresiva, algunos árboles caídos que entorpezcan la crecida de la vegetación a su paso (intento dar detalles que podrían habitar en NMS). Acá tienen una buena lectura para ejemplificar esto pero con un enfoque más realista.

Como sea, algunos "paisajes" son hermosos
Como sea, algunos “paisajes” son hermosos

Todas esas características son simples de generar al modelar objetos, aplicar texturas y ciclos de día/noche en un juego. Pero generar este contenido humanamente recordable de una forma totalmente automatizada es, por el momento, imposible. Considero que No Man’s Sky es un display extraordinario de algoritmos muy bien aplicados, pero que no pueden valerse por sí mismos. En mi opinión, el juego podría haber sido muchísimo más llamativo y entretenido si no se hubiese valido de su contenido procedural en un 100%.

¿Es la falta de ojo humano en los assets de un juego un factor que lo puede hacer fallar fácilmente? ¿Es No Man’s Sky un juego o más bien una exhibición de capacidades técnicas y maravillas algorítmicas?

  • Mato

    Excelente nota Coni!

    Lamentablemente, desde un punto de vista de diseño, todo lo que sea generado proceduralmente nunca va a tener el mismo impacto que una experiencia que fue pensada de manera cuidada en cada detalle.

    Esto no quiere decir que sea malo, no, solo que es muy dificil lograr algo trascendente si no se hace MUY bien, y si no se pule hasta el hartazgo.
    A mi personalmente me gustó el No Man’s Sky, pero es innegable que despues de muchas horas de juego, uno empieza a ver los patrones detrás de todo, lo poco que varian las cosas, y como atrás de todo lo procedural hay un molde bastante acotado.
    Ojalá sirva el ejemplo y la experiencia para seguir haciendo cosas de este tipo, porque la tecnologia detrás del juego es increible, pero falló un poco la aplicación.

  • Franco

    Amé esta nota, y coincido bastante con vos: NMS me parece técnicamente ejemplar pero con una fórmula de mecánicas/estéticas que pueden llegar a ser monótonas.

  • Diego Bournot

    Excelente análisis. Amo este tipo de notas en las cuales no se analiza un juego de forma genérica, “con receta”, sino que se ahonda en cuestiones de fondo que tienen que ver con distintas formas de verlo y experimentarlo, a la vez que se le da un toque mucho más personal y arriesgado en cuanto a la opinión. ¡Muy bien, Coni!