Manzana
![]()
La manzana no es un enemigo “simple que camina y dispara”, sino un enemigo terrestre con varias capas de decisión. Su comportamiento se entiende mejor si lo divides en bloques:
Resumen
- Camina por el suelo como un enemigo terrestre normal.
- Puede cambiar de dirección al chocar.
- Puede decidir dejarse caer por un borde.
- Puede saltar horizontalmente.
- Puede saltar hacia arriba.
- Puede escalar pequeños desniveles.
- Puede detenerse para preparar un disparo y lanzar un proyectil.
- Todo eso depende de si está en condiciones de actuar, de la cercanía del jugador, del terreno y de probabilidades internas.
Cómo se mueve
- Su movimiento base es caminar horizontalmente.
- Tiene una dirección actual, izquierda o derecha.
- Mientras está estable en el suelo y no está ocupado con otra acción, avanza continuamente en esa dirección.
- Si golpea una pared o encuentra una situación desfavorable, puede darse vuelta y seguir caminando hacia el lado contrario.
- No se mueve “libremente” todo el tiempo: muchas de sus acciones están sujetas a si está listo para actuar o no.
Qué significa que esté “listo”
- La manzana solo toma decisiones complejas cuando está en un estado válido.
- En la práctica, eso significa:
- No estar en el aire en mitad de otra acción.
- No estar congelado.
- No estar aturdido.
- No estar muerto.
- No tener una acción pendiente aún por ejecutarse.
- Si no está listo, no toma nuevas decisiones.
Cómo decide caminar
- Cuando está sano y estable, su comportamiento por defecto es caminar.
- La velocidad real no es fija del todo:
- Parte de una velocidad base.
- Luego esa velocidad puede aumentar si entra en estados de “anger” o modificadores globales.
- O sea, hay una velocidad base, pero también existe un factor multiplicador que puede alterar su desplazamiento.
Cómo decide caer
- Cuando llega a un borde o una zona donde el terreno permite una caída, evalúa si se deja caer.
- Esa decisión no es totalmente aleatoria:
- Si el jugador está cerca, la caída se vuelve más “inteligente”.
- Si el jugador no está cerca, depende más de una probabilidad interna.
- También tiene en cuenta si el mapa marca esa zona como un lugar válido para caer.
- Es decir, no cae en cualquier precipicio porque sí: necesita que la geometría y las flags del escenario lo permitan.
Cómo decide saltar
La manzana tiene dos comportamientos de salto importantes:
- Salto hacia arriba.
- Salto horizontal.
El salto no ocurre todo el tiempo, sino bajo condiciones.
Salto hacia arriba
- Lo usa cuando la situación del entorno o la posición del jugador hacen conveniente subir.
- Si el jugador está cerca, el comportamiento se vuelve más dirigido:
- Si el jugador está más arriba, aumenta la lógica de intentar saltar hacia arriba.
- Si el jugador no está cerca, lo decide por probabilidad.
Salto horizontal
- Lo usa principalmente cuando está en un borde o ante una discontinuidad del terreno.
- Si el mapa indica que en ese punto puede saltar hacia izquierda o derecha, hace ese salto.
- Este salto también depende de estar listo y de que el mapa marque correctamente ese punto como un sitio apto para salto horizontal.
Escalada
- La manzana puede “subir” pequeños desniveles.
- Esto no es una trepada libre, sino una lógica de escalada limitada.
- Se fija si el escenario indica que hay posibilidad de escalar a izquierda o derecha.
- También verifica que la altura de ese desnivel no supere su máximo permitido.
- Si el desnivel es válido, transforma esa decisión en un salto de escalada.
- O sea, no escala cualquier cosa: tiene un límite y depende del análisis del mapa.
Qué tiene en cuenta para moverse
Cuando la Manzana decide cómo moverse, está considerando varias cosas al mismo tiempo:
- Si está sano o incapacitado.
- Si está en el suelo o en el aire.
- Si tiene una acción pendiente.
- Si el jugador está cerca.
- Si el jugador está arriba o abajo.
- Si el mapa permite caída.
- Si el mapa permite salto horizontal.
- Si el mapa permite escalada.
- Probabilidades internas de cada comportamiento.
Eso hace que no sea totalmente determinista, pero tampoco completamente aleatorio.
Cómo funciona su disparo
La manzana también tiene lógica de shooter.
Su disparo funciona en varias fases:
- Cooldown
- Preparación
- Disparo
- Recuperación
Cooldown
- Tiene un contador interno de espera entre disparos.
- Mientras ese contador no llegue a cero, no intenta disparar.
- Ese contador baja con el tiempo.
Decisión de disparar
- Cuando el cooldown ya terminó, evalúa si debe disparar.
- No dispara automáticamente siempre.
- Necesita:
- Estar listo.
- Tener el modo shooter activo.
- Que una probabilidad interna se cumpla.
- Es decir, aunque ya pueda disparar, todavía hay una tirada de probabilidad.
Preparación del disparo
- Antes de lanzar el proyectil, entra en una fase de preparación.
- En esa fase:
- Se detiene.
- Reproduce una animación de preparación.
- Espera una pequeña cantidad de tiempo.
- Esta pausa es importante, porque el disparo no es instantáneo.
Loop de disparo
- Mientras se mantiene esa fase, entra en una animación de “shoot loop”.
- Esto representa visualmente que está disparando o a punto de disparar.
Ejecución del disparo
- Cuando termina la preparación, crea un proyectil.
- Ese proyectil sale desde su posición.
- La dirección del proyectil depende de hacia dónde esté mirando:
- Si mira a la izquierda, dispara a la izquierda.
- Si mira a la derecha, dispara a la derecha.
Recuperación
- Después de disparar, todavía permanece un pequeño tiempo en ese estado antes de volver a caminar.
- O sea, el disparo tiene una ventana completa:
- Preparar
- Ejecutar
- Salir del disparo
Qué proyectil lanza
- Lanza una semilla.
- Esa semilla viaja horizontalmente.
- Si impacta al jugador, lo mata.
Cómo influye el jugador en su IA
El jugador influye bastante en la Manzana, pero no como un seguimiento perfecto. La manzana usa una mezcla de:
- Distancia al jugador.
- Diferencia vertical.
- Probabilidad.
- Navegación del entorno.
Cuando el jugador está cerca:
- Algunas decisiones se vuelven más agresivas o más dirigidas.
- Es más probable que:
- Salte hacia donde conviene.
- Escale.
- Elija acciones que lo acerquen al jugador.
Pero no es una persecución “inteligencia moderna total”. Es una IA clásica basada en reglas y probabilidades sobre un mapa con ayudas de navegación.
Cómo afectan freeze, knock y muerte (Congelamiento, aturdimiento y muerte)
Aunque el comportamiento visible sea caminar/disparar/saltar, todo eso puede cortarse por estados especiales.
Freeze (Congelamiento)
- Si se congela, deja de actuar normalmente.
- En ese estado no toma decisiones activas.
Knock (Aturdimiento)
- Si queda aturdido o lanzado, pierde temporalmente su comportamiento normal.
- Tampoco actúa como un walker/shooter mientras dura ese estado.
Muerte
- Si muere, deja de participar en la IA.
- Reproduce su lógica de muerte y ya no sigue caminando ni disparando.
Cómo se podría resumir su cerebro
La manzana funciona más o menos así:
- Si no estoy sano, no actúo.
- Si no estoy listo, espero.
- Si estoy caminando y el terreno me obliga a decidir:
- Veo si debo caer.
- Veo si debo saltar.
- Veo si debo escalar.
- Si ya puedo disparar:
- Evalúo la probabilidad.
- Si sale, me paro, preparo el tiro y disparo.
- Si no ocurre ninguna acción especial:
- Sigo caminando.
Personalidad jugable de la Manzana
En práctica, la manzana se siente como:
- Un enemigo terrestre móvil.
- Bastante activo.
- Capaz de adaptarse al terreno.
- Peligroso a distancia por su proyectil.
- Más complejo que un simple caminante, porque combina navegación y disparo.