108 lines
3.5 KiB
Markdown
108 lines
3.5 KiB
Markdown
# TANK BATTLEZONE
|
|
|
|
Un juego de combate de tanques en 3D retro con gráficos vectoriales al estilo de la mítica máquina arcade *BattleZone* (1980), desarrollado en Python y Pygame.
|
|
|
|

|
|
|
|
---
|
|
|
|
## 📖 Descripción
|
|
|
|
**Tank BattleZone** recrea la experiencia arcade de combate vectorial tridimensional en un entorno acotado.
|
|
|
|
Pilotas un tanque táctico en un mapa plagado de pirámides obstáculo, enfrentándote a hordas progresivas de tanques enemigos con distintas habilidades y buscando recargar tus escudos destruyendo OVNIs y recogiendo potenciadores.
|
|
|
|
Todos los gráficos se renderizan mediante proyección matemática 3D a 2D en líneas vectoriales puras, y el audio (disparos, explosiones, motor y escudos) se sintetiza dinámicamente mediante software sin requerir archivos de audio externos.
|
|
|
|
---
|
|
|
|
## ✨ Características Principales
|
|
|
|
* 📐 **Renderizado Vectorial 3D Reales:** Proyección de perspectiva 3D personalizada mediante ecuaciones de álgebra vectorial.
|
|
* 🤖 **Inteligencia Artificial Enemiga:** Varios tipos de tanques enemigos con comportamiento de acecho, orientación de torreta independiente y patrulla.
|
|
* 🛸 **Eventos Dinámicos:** Aparición periódica de OVNIs cruzadores que otorgan recompensas críticas.
|
|
* 🔊 **Síntesis de Audio PCM:** Efectos de sonido retro sintetizados por software en tiempo real (procedimentales).
|
|
* 🕹️ **Pantalla Inicial Descriptiva:** Menú de inicio interactivo con previsualización gráfica de todos los elementos vectoriales del juego.
|
|
* 🐧 **Soporte Nativo para Linux:** Diseñado y optimizado para ejecutarse en distribuciones basadas en Debian.
|
|
|
|
---
|
|
|
|
## 🛠️ Requisitos
|
|
|
|
### Requisitos de Software
|
|
* **Python:** 3.8 o superior.
|
|
* **Pygame:** 2.0.0 o superior.
|
|
|
|
---
|
|
|
|
## ⚙️ Instalación y Ejecución
|
|
|
|
Sigue estos pasos para instalar las dependencias e iniciar el juego en tu sistema Debian:
|
|
|
|
1. Clonar o descargar el repositorio
|
|
|
|
```bash
|
|
git clone https://gitea.soloconlinux.org.es/luisgulo/Tank_BattleZone.git
|
|
cd Tank_BattleZone
|
|
```
|
|
|
|
2. Instalar dependencias en Debian
|
|
|
|
Asegúrate de tener Python 3 y pip instalados, e instala la librería pygame:
|
|
|
|
```bash
|
|
sudo apt update
|
|
sudo apt -y install python3 python3-pip python3-pygame
|
|
```
|
|
|
|
(Opcional: Si prefieres usar un entorno virtual)
|
|
|
|
```bash
|
|
python3 -m venv venv
|
|
source venv/bin/activate
|
|
pip install pygame
|
|
```
|
|
|
|
3. Ejecutar el juego
|
|
|
|
Lanza el script principal del juego desde tu terminal:
|
|
|
|
```bash
|
|
python3 tank_battlezone.py
|
|
```
|
|
|
|
## 🕹️ Cómo Jugar
|
|
|
|
⌨️ Controles
|
|
|
|
| Acción | Tecla / Control |
|
|
| --- | --- |
|
|
|Avanzar / Retroceder | Flecha Arriba / W \| Flecha Abajo | / S |
|
|
|Girar Tanque | Flecha Izquierda / A | Flecha Derecha / D|
|
|
|Disparar Cañón|Barra Espaciadora|
|
|
|Comenzar / Reiniciar|Intro (Menú) / R (Tras Game Over)|
|
|
|
|
🎯 Elementos del Juego
|
|
|Elemento | Descripción |Puntos / Efecto|
|
|
| --- | --- | --- |
|
|
|🟩 Pirámide verde|Obstáculo infranqueable. Bloquea el paso y los disparos.|—|
|
|
|🔴 Tanque Rojo|Enemigo básico. Requiere 1 impacto.|+1,000 Pts|
|
|
|🔵 Tanque Azul|Enemigo intermedio. Requiere 2 impactos.|+2,500 Pts|
|
|
|🟣 Tanque Púrpura|Enemigo pesado. Requiere 3 impactos. Puede soltar un potenciador.|+5,000 Pts|
|
|
|🟡 Diamante Amarillo|Potenciador de escudo flotante.|+1 Escudo / +500 Pts|
|
|
|🛸 OVNI Amarillo|Objeto volador no identificado cruzador.|Recarga ESCUDO MÁXIMO / +3,000 Pts|
|
|
|
|
|
|

|
|
|
|
📁 Estructura del Proyecto
|
|
|
|
```
|
|
Tank_BattleZone/
|
|
├── battlezone.py # Código fuente principal del juego (Pygame)
|
|
└── README.md # Documentación del proyecto
|
|
```
|
|
|
|
|
|
|