Creación de Balas Enemigas y Disparo en Unreal Engine

Clase 16 de 18Curso de Creación de Videojuegos de Realidad Virtual

Resumen

¿Cómo hacen para que los enemigos disparen en un videojuego?

Incorporar la capacidad para que los enemigos disparen en un videojuego es un proceso que requiere manejar adecuadamente los blueprints y los objetos dentro del juego. Una de las primeras cosas que debemos hacer es modificar el blueprint del blanco para que sean capaces de disparar balas hacia el jugador. Vamos a detallar los pasos para lograrlo:

  1. Duplicar el blueprint de la bala: Necesitamos crear un nuevo tipo de bala, así que duplicamos la bala existente y la llamamos bala enemiga.

  2. Modificación de la bala enemiga: Configuramos que la bala enemiga afecte al jugador, el PlayerPawn. En el evento de impacto con el PlayerVR, destruimos la bala y reducimos la salud del jugador.

  3. Creación de variable de salud: En el blueprint del PlayerVR, creamos una nueva variable llamada salud de tipo entero, que define cuántos impactos puede recibir el jugador antes de perder.

¿Cómo se implementa un seguimiento dinámico al jugador?

Un elemento crucial para aumentar la dificultad y el dinamismo del juego es que las balas enemigas sigan y apunten al jugador de manera constante, incluso si este se mueve. El proceso para implementar esta función incluye varios pasos:

  1. Referenciar la esfera del jugador: En el blueprint de los blancos, necesitamos hacer referencia a la esfera de colisión del Player. Para eso, hacemos un cast al PlayerPawn y luego obtenemos la esfera deseada.

  2. Generación de la bala enemiga: Usamos un SpawnActorFromClass para crear la bala enemiga. La ubicación de inicio se obtiene de la malla estática del blanco en el mundo.

  3. Calcular la rotación hacia el jugador: Para que las balas apunten al jugador, calculamos la rotación entre el punto de origen de la bala y la posición del jugador utilizando FindLookAtRotation.

  4. Ajustar colisiones y velocidades: Es esencial permitir superposiciones en la esfera para evitar conflictos. Luego, ajustamos la velocidad del proyectil y su tamaño para que el jugador pueda verlas y reaccionar.

¿Cómo se controla la frecuencia de disparo de los enemigos?

Un aspecto que puede aumentar la jugabilidad y evitar que el nivel de dificultad sea abrumador es ajustar la frecuencia con la que los enemigos disparan. Esto se puede lograr usando un sistema de condiciones al azar:

  1. Implementación de un "Switch" en el flujo de ejecución: Antes de que los blancos disparen, introducimos un Switch On Int, que nos permitirá controlar cuántas veces se ejecuta el código de disparo.

  2. Randomización: Usamos una función de número aleatorio dentro de un rango para decidir si una esfera específica debería disparar en cada ciclo del evento. Esto se traduce en que solo una de cada tres o cuatro esferas disparará, haciendo más manejable la experiencia de juego.

  3. Ajuste del flujo del juego: Con esta técnica, creamos un flujo donde la probabilidad de que los enemigos disparen está controlada y el jugador tiene más tiempo para adaptarse y planificar sus movimientos.

Implementar todas estas funcionalidades proporciona una experiencia de juego más desafiante y dinámica, mejorando la interacción del jugador con el entorno del videojuego. Al seguir estos pasos, podrás ver una mejora sustancial en la manera en que los enemigos interactúan y desafían al jugador.