Nueva inteligencia artificial para npcs

Ha pasado un tiempo desde la última actualización, que se ha ocupado en el desarrollo de esta nueva funcionalidad: ahora algunos personajes no jugadores contarán con nuevos tipos de comportamiento. En principio sólo se cambiarán algunos de los personajes más poderosos (para empezar el Zombie de Fingol y el Insector, otros se irán añadiendo durante los próximos días), que tendrán nuevos comportamientos y escogerán cómo, cuándo y dónde atacar a sus enemigos.

Este sistema se irá ampliando durante los próximos días con algunos nuevos comportamientos, que se añadirán a las nuevas formas de combate y huida que tienen ahora. El próximo de ellos: búsqueda inteligente de enemigos en zonas cercanas. Se añadirá dentro de unos días para que os vaya dando tiempo de probar los nuevos cambios sin que sean demasiado radicales.

Para los programadores:

Se ha intentado que el nuevo sistema sea completamente transparente a la programación de npcs, con cambiar el archivo de herencia desde /std/monster.c a /std/ai.c todos los nuevos funcionamientos ya estarán incluidos. Dado que estos personajes se moverán mucho, es recomendable que sean únicos (set_only_one(1)), para evitar problemas. Por tanto, se recomienda aplicar este sistema de inteligencia artificial únicamente a personajes especiales, no indiscriminadamente.

Actualización: Primeras ampliaciones al sistema de inteligencia artificial ya en juego:

  • Los npcs tienen diferentes formas de alejarse de las zonas peligrosas, intentando alejarse lo máximo posible o dando vueltas buscando a su próxima víctima.
  • Ahora también tienen un modo de búsqueda de enemigos, localizarán a uno de sus anteriores atacantes, se aproximarán hasta él y utilizarán sus distintas dotes. Se avisa al jugador cuando está siendo objetivo de esta persecución para que no crea que está en un lugar a salvo, aún cuando no parezca haber nadie en los alrededores.

Multigremio y multioficio

En Ciudad Capital, los únicos conceptos fijos durante toda la vida del personaje son los de la raza y clase:

  • La raza parece obvio que es un valor estable durante toda la vida del personaje. Aunque hay algunos conceptos a los que estamos dando vueltas para poder introducir algunas modificaciones, todavía están muy verdes, por lo que asumiremos que permanecerá siempre inalterable.
  • La clase define la forma de ser y enfrentarse al mundo del personaje. Estas clases son conceptos básicos, como Guerrero, Explorador, etc.

En el momento de creación del personaje sólo es necesario realizar tres pasos: elección de raza (y/o subraza o cultura en el caso de existir), elección de clase y ajuste de las características (comúnmente conocida como “la ficha”).

Sin embargo, con los nuevos conceptos de gremio y oficio, hemos introducido la capacidad para poder alistarse y abandonarlos cuando buenamente se quiera, proporcionando así una mayor vida útil al personaje, y dejando de lado en la mayor parte de los casos la necesidad de volver a crear múltiples personajes para probar el juego.

Así, tras alistarse en un gremio y avanzar varios niveles dentro de ese gremio, el jugador puede abandonarlo. Mantendrá las dotes que haya aprendido (aunque podrían funcionar distinto cuando no se es miembro, si eso tiene lógica) y, lo más importante, quedará almacenado el nivel que se tenía en ese momento por si en un futuro el jugador desea volver al gremio original.

Con el comando “ficha” únicamente se ve el gremio y oficio actuales, pero utilizando “who <mi nombre>” puede verse el histórico completo de gremios y oficios a los que se ha pertenecido. Por ejemplo:

> who folken

Folken el velan:
   Clase:
      Guerrero de nivel 8.
   Gremios:
      Caballero Astral de nivel 2.
      Templario Negro de nivel 1.
   Oficios:
      Cazador de nivel 1.