Unity · C# · Arcade 2D · Top-down
Militar Invasion 2D
Prototipo base jugable de acción arcade 2D inspirado en Space Invaders, donde el jugador controla un robot en vista superior para eliminar enemigos militares, superar niveles y enfrentarse a un boss araña mecha.
Resumen técnico
Militar Invasion 2D es un prototipo arcade de acción 2D inspirado en la estructura clásica de Space Invaders. El jugador controla un robot en un escenario fijo visto completamente desde arriba, se desplaza horizontalmente, dispara con la tecla espacio y debe eliminar oleadas de enemigos de temática militar.
El proyecto incluye varios niveles base, desbloqueo progresivo, enemigos comunes con IA básica, balas y proyectiles tanto propios como enemigos, puntuación, vidas, victoria, derrota, partículas, sonido, música, menús y un nivel boss contra una araña mecha con habilidades especiales.
Vista y escenario
El juego utiliza una vista superior con escenario fijo: la cámara no se desplaza y los límites de pantalla restringen tanto al jugador como a los enemigos para concentrar el gameplay en esquivar, disparar y gestionar oleadas.
Objetivo y condiciones
El jugador gana al eliminar todos los enemigos del nivel y pierde si se queda sin vidas. La progresión se organiza por niveles, con desbloqueo al superar el nivel anterior y un enfrentamiento final contra una araña mecha.
Mi contribución
- Diseño e implementación del flujo principal arcade: movimiento horizontal, disparo, oleadas, niveles, victoria y derrota.
- Implementación de proyectiles del jugador y de enemigos, colisiones, daño, vida del jugador y vida de enemigos.
- Preparación de enemigos militares, IA básica, boss araña mecha con comportamiento mejorado y habilidades especiales.
- Integración de puntuación, menús, desbloqueo de niveles, partículas, sonido, música, build Windows y documentación técnica.
Sistemas implementados
- Movimiento horizontal del jugador con límites de pantalla.
- Disparo del jugador mediante tecla espacio.
- Balas y proyectiles propios y enemigos.
- Enemigos militares con IA básica.
- Boss araña mecha con IA mejorada y habilidades especiales.
- Vidas, vida de enemigos, puntuación, victoria y derrota.
- Sistema de niveles y desbloqueo progresivo.
- Menú principal, menú de niveles, partículas, sonido y música.
Características principales
- Gameplay arcade 2D inspirado en Space Invaders.
- Jugador robot en vista superior y escenario fijo.
- Movimiento horizontal sin posibilidad de salir de pantalla.
- Disparo mediante tecla espacio.
- Enemigos de temática militar: soldados, coches, tanques y otras unidades.
- Proyectiles del jugador y de los enemigos.
- Sistema de vidas, vida de enemigos y puntuación.
- Varios niveles base con desbloqueo progresivo.
- Nivel boss contra una araña mecha con habilidades especiales.
- Menú principal, menú de selección de niveles, partículas, sonido y música.
- Build jugable para Windows publicada en GitHub Releases.
Flujo técnico previsto
El flujo técnico conecta input del jugador, creación de proyectiles, oleadas de enemigos, control de vidas y puntuación, desbloqueo de niveles y resolución de victoria o derrota.
- 01Player InputEl jugador se mueve horizontalmente dentro de los límites del escenario y dispara con la tecla espacio.
- 02ProjectilesLas balas del jugador y los proyectiles enemigos gestionan dirección, colisiones, daño y destrucción.
- 03Enemy WavesEnemyCreator organiza enemigos comunes, unidades militares y el encuentro contra la araña mecha.
- 04Game StateGameManager controla puntuación, vidas, niveles, victoria, derrota y desbloqueo de progresión.
Arquitectura
La lógica principal se divide en managers y controladores especializados para separar animación, proyectiles, creación de enemigos, control global de partida y preparación del escenario.
- AnimControl — control de animaciones, partículas y feedback visual.
- BulletControl — gestión de proyectiles del jugador y enemigos.
- EnemyCreator — creación de enemigos y organización de oleadas o formaciones.
- GameManager — control de partida, puntuación, vidas, niveles, victoria y derrota.
- WorldCreator — generación o preparación del escenario y estructura del nivel.
Tecnologías
Visuales previstos
El repositorio deja preparados nombres previstos para logo, portada, banner y miniaturas centradas en disparo del jugador, oleadas enemigas, boss araña mecha y selección de niveles.
militarinvasion-logo.pngmilitarinvasion-cover.pngmilitarinvasion-banner.pngmilitarinvasion-thumbnail-01-player-shooting.pngmilitarinvasion-thumbnail-02-enemy-waves.pngmilitarinvasion-thumbnail-03-mecha-spider-boss.pngmilitarinvasion-thumbnail-04-level-selection.png
Estado y próximos pasos
Estado actual: Prototipo base jugable
El proyecto contiene cuatro niveles base y un nivel boss contra una araña mecha. La demo incluye movimiento horizontal, disparo, enemigos, proyectiles, vidas, puntuación, niveles, victoria, derrota, desbloqueo de niveles, menú principal, menú de niveles, partículas, sonido y música.
- Añadir más niveles.
- Añadir distintos tipos de enemigos.
- Añadir sistema de pausa y guardado de puntuación máxima.
- Mejorar y ampliar el desbloqueo de niveles por superación del nivel anterior.
- Añadir habilidades, power-ups y árbol de habilidades.
Ruta recomendada de revisión
Para revisar técnicamente el proyecto, conviene empezar por el GameManager y después recorrer la creación de enemigos, proyectiles, animación y preparación del mundo.
Project/PRJ_MilitarInvasion/Assets/Scripts/GameManager.csControl global de partida, puntuación, vidas, niveles, victoria y derrota.EnemyCreator.csCreación y organización de enemigos comunes, oleadas y formaciones.BulletControl.csGestión de balas, proyectiles, colisiones y daño.AnimControl.cs / WorldCreator.csFeedback visual, partículas, animaciones y preparación del escenario.
Aprendizajes
Este proyecto me permitió practicar movimiento y disparo 2D, gestión de proyectiles y colisiones entre balas, enemigos y jugador.
También me sirvió para trabajar estados básicos de partida, incluyendo puntuación, vidas, victoria, derrota y progresión por niveles.
Además, el proyecto me ayudó a organizar un prototipo arcade de acción separando responsabilidades entre creación de enemigos, control de proyectiles, control de mundo, animaciones y gestión global de la partida.