Manual táctico y matemático de batalla naval en tres dimensiones
El juego de estrategia de batalla naval (mundialmente conocido como Battleship o Hundir la flota) combina deducción espacial, probabilidad condicional y optimización combinatoria sobre un espacio discreto de dos dimensiones proyectado en un teatro tridimensional realista.
1. Composición reglamentaria de la flota militar
En la versión clásica reglamentaria de cuadrícula 10x10 (coordenadas de la fila A a la J y columnas del 1 al 10), cada comandante dispone de 5 buques de guerra que totalizan exactamente 17 celdas operativas:
- Portaaviones (5 celdas): El coloso de la flota. Cubre una gran superficie longitudinal y su detección temprana permite al enemigo encadenar múltiples impactos consecutivos.
- Acorazado (4 celdas): Buque fuertemente blindado con baterías pesadas. Requiere cuatro impactos certeros para zozobrar.
- Submarino (3 celdas): Embarcación sumergible de perfil estrecho, ideal para ocultarse en zonas intermedias del océano.
- Destructor (3 celdas): Navío ligero y rápido diseñado para escolta y defensa antiaérea.
- Patrullera (2 celdas): La unidad más pequeña y esquiva. Al ocupar únicamente dos casillas contiguas, suele ser el último buque en ser descubierto en la fase final de la partida.
2. Estrategia matemática de búsqueda por paridad de tablero
El error más frecuente de un jugador novato consiste en disparar de forma aleatoria o en barrido continuo celda a celda. La teoría de juegos demuestra que, dado que el buque más corto mide 2 celdas, cualquier barco colocado en el tablero ocupa obligatoriamente al menos una casilla donde la suma de fila y columna es par:
Adoptando este patrón en damero (blancas y negras como en el ajedrez), es matemáticamente imposible que un barco enemigo permanezca oculto disparando a un máximo de 50 casillas en lugar de las 100 del tablero completo, reduciendo el coste de exploración a la mitad. Además, cuando la patrullera ha sido hundida, el paso de paridad puede incrementarse al tamaño del barco menor restante (3 celdas), disparando únicamente una de cada tres casillas.
3. Algoritmo de ataque en cruz ortogonal y seguimiento de orientación
En cuanto se registra el primer impacto positivo («¡Tocado!»), el valor informativo de la coordenada se multiplica. La máquina entra en modo diana o persecución ejecutando el siguiente protocolo:
- Sondeo en cruz: Evalúa las cuatro casillas cardinales inmediatas (Norte, Sur, Este y Oeste) que no hayan sido bombardeadas previamente.
- Deducción de eje: Al lograr el segundo impacto en una casilla adyacente, la orientación queda determinada de forma unívoca (eje horizontal o vertical). Se descartan de inmediato los dos vectores perpendiculares.
- Extrapolación y rebote: Se continúa disparando en la dirección establecida hasta encontrar agua («¡Agua!») o el borde del tablero. En ese momento, se invierte la dirección hacia el lado opuesto a partir del primer impacto hasta certificar el hundimiento total.
4. Simulación física del océano y balística de proyectiles
A diferencia de las versiones planas 2D, este simulador recrea el teatro oceánico mediante Three.js:
- Oleaje procedural: El plano marino se subdivide en miles de vértices cuya componente vertical oscila armónicamente combinando múltiples funciones trigonométricas con desfase de frecuencia y velocidad de propagación.
- Balística parabólica: Los misiles navales recorren una curva de Bézier cuadrática calculando en tiempo real el vector tangente de velocidad para alinear el fuselaje con el ángulo de descenso.
- Hidrodinámica de salpicadura: Las partículas de agua expulsadas tras un fallo se someten a aceleración gravitatoria descendente, mientras que los impactos directos desatan detonaciones volumétricas con humo negro y llamas activas.