Construir 2 Series RPG por Aryadi Subagio (@AryadiPS):

Bienvenido a mi tutorial de hacer un juego de rol. Esta es la segunda parte del diseño de IA de los enemigos, los magos de AI. Haciendo AI para los magos en realidad no es muy diferente de AI para atacante físico, sólo hay pequeños cambios. En primer lugar tenemos que recordar que hay dos tipos de magos, el mago ofensivo que ataca a los enemigos con magia destructiva, y el mago de apoyo que da la curación o cualquier otra magia de apoyo a los aliados. Ambos tienen sus propias lógicas.

En primer lugar, vamos a diseñar la IA de los magos ofensivos, el flujo de la lógica es la siguiente:


  1. Seleccionar destino
  2. Si el SP es suficiente para al menos un molde magia, elegir una magia
  3. Introduzca el tiempo de lanzamiento
  4. Si es atacado por el enemigo, la magia se cancela
  5. Si el tiempo de lanzamiento ha terminado, reducir el SP y echó la magia
  6. Si el objetivo está todavía vivo, de nuevo a ninguna. 2
  7. Si el objetivo está muerto, de nuevo a ninguna. 1
  8. Si no tienen suficiente SP, atacar físicamente.

    Se necesita el último punto para que el mago no te quedes sin poder hacer nada en la pantalla de batalla. La lógica de selección de destino es el mismo que el atacante físico, que va a utilizar variables de instancia y enemySelection targetName. Si se olvida de lo que son, por favor ver mi tutorial anterior, está escrito allí, así que no voy a explicar de nuevo.

    A continuación, los magos seleccionará el que la magia que él / ella va a emitir. Por ahora estoy haciendo el enemigo seleccionar la magia al azar de la lista de magia que están disponibles para él en una batalla. Porque no sé cómo hacer que la IA para elegir una habilidad / mágica sobre la otra, cuando sé cómo lo hacen, voy a escribir un tutorial sobre el tema. Después de elegir su magia, los magos entrarán en un tiempo de lanzamiento, mientras que echa los magos no puede caminar o ataque o hacer otras cosas. Si todavía recuerda la variable de instancia estado, vamos a cambiar el valor de la variable de estado, mientras que los magos son de fundición de la magia. Todas las magias tienen una variable de instancia llamada Cast Time que determina cuánto tiempo es el tiempo de lanzamiento en cuestión de segundos. Si son atacados los magos, vamos a cambiar el estado por lo que sabemos que no está lanzando actualmente su magia. Si la colada se terminó ininterrumpida vamos a reducir el SP y luego ejecutar la función que está desechando la magia. Estoy pensando de hacer una familia que contiene todas las magias disponibles y tienen las variables y funciones de instancias necesarias, incluida la función que va a emitir la magia.

    Ahora a los magos de apoyo AI. Estos magos tienen dos trabajos: para sanar la herida miembro del partido, y para dar magia para aumentar temporalmente las estadísticas. Por lo que el flujo de la lógica es:. Si hay una necesidad de curación amigo le cure, si no, dar magias de apoyo


    1. Busque otra corriente de HP miembro del partido, encontrar si hay alguien necesidad de curación
    2. Si la hay, elegir una magia curación
    3. Introduzca el tiempo de lanzamiento
    4. Si es atacado por el enemigo, el tiempo de lanzamiento va a terminar, y la magia no va a ser moldeado
    5. Si logran emitir la magia hasta el final, reducir SP actual y echó la magia
    6. Volver al punto 1
    7. Si nadie necesidad de curación, elegir una magia de apoyo
    8. Elija un objetivo para la magia
    9. Introduzca el tiempo de lanzamiento
    10. Si es atacado, el tiempo de lanzamiento va a terminar, y la magia cancelado
    11. Si logran emitir la magia, reducir SP actual y echó la magia
    12. Volver al punto 1

      Antes de la ejecución de este AI, tenemos que comprobar si el SP actual es suficiente para al menos un molde de magia, si no puede entonces el mago hará ataque físico.

      La definición de “un miembro del partido necesita curación” es interesante, y que puede personalizar esto para determinar con qué frecuencia un mago sanará su miembro del partido. Voy a dividir esta en función de cómo es mucho HP actual del otro miembro del partido. Al igual que siempre, me voy a tomar una variable de instancia de ella, esta vez estoy nombrarlo healMethod.


      1. Cura HP cuando la corriente de otros miembros del partido está por debajo de 75% = “preocupaciones”
      2. Cura HP cuando la corriente de otros miembros del partido está por debajo del 50% = “moderado”
      3. Cura HP cuando la corriente de otros miembros del partido está por debajo de 25% = “crítico”

        Con esto podemos personalizar AI (o enemigo de) la curación del miembro de fiesta para el sanador, porque quiero la personalización AI a ser un poco adelantado poco. Una nota más sobre la magia curativa: habrá magia curativa que se cura más de un miembro del partido, y para usarlo sanadores hay que saber si el miembro del partido herido es sólo uno, o más de uno. Por esta razón, vamos a hacer una variable de instancia llamada woundedNumber. Si el valor de woundedNumber es más de uno, entonces sanadores usará magia curativa que cura las múltiples miembros del partido a la vez. Este valor se establecerá de nuevo a 0 después de cada uso de la magia curativa.

        En la magia de apoyo, tenemos que marcar si de un personaje (o enemigo) miembro del partido ya ha fundido por una magia de apoyo o no, por lo que el mago se centrará en el apoyo a un personaje que no ha sido fundido por un hechizo de apoyo . Vamos a hacer dos tipos de ranuras, para la magia aficionado y para desventaja de magia. Estas ranuras son variables de instancia en el nombre de:. Slot1Buff, slot2Buff, slot1Debuff, slot2Debuff que contienen la cadena de nombre de buff / debuff magia Casted en el reproductor

        Eso es todo por ahora, la próxima vez vamos a empezar en la implementación de este AI.

        Mensajes relacionados

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *