El 7×7 no es una limitación que haya que corregir

Ataxx parte de cuatro fichas situadas en las esquinas de un tablero 7×7. En cada turno eliges una ficha y haces una de dos cosas: moverte una casilla para crear una copia o saltar dos casillas trasladando la ficha original. Después, todas las fichas enemigas adyacentes al destino cambian de color.

Es una regla extremadamente compacta y precisamente por eso no hemos añadido tamaños artificiales. El 7×7 es el formato clásico del juego. En PuzzleHub la variedad llega por la fuerza de la CPU, no por convertir Ataxx en otra cosa.

Dos movimientos, una misma captura
+ clonar↗ saltarlas fichas vecinas se convierten
Clonar aumenta el material; saltar mantiene la cantidad, pero puede cambiar por completo la geometría de la posición.

El prototipo tenía un problema más grave que no tener IA

El antiguo motor alternaba sencillamente jugador 1 y jugador 2. Al terminar, llamaba al mismo método solved() que usan Sudoku, Akari o Nonogram. Eso significaba que una derrota podía acabar registrada como un «puzzle resuelto».

La corrección no está dentro de Ataxx, sino en la infraestructura común. El sistema de progreso entiende ahora dos familias de resultados: resolución de puzzles y competición. Los juegos contra CPU pueden registrar victorias, derrotas, empates, mejor tiempo de victoria, balance por dificultad y último resultado sin contaminar el contador de puzzles resueltos.

Cuatro dificultades que sí cambian la CPU

Fácil valora la posición inmediata y elige con aleatoriedad controlada entre varias jugadas razonables. Normal busca dos plies. Difícil profundiza más y usa poda alpha-beta. Experto aplica profundización iterativa con presupuesto de tiempo y tabla de transposición.

La evaluación tampoco se limita a contar fichas. Combina diferencia de material, movilidad disponible, potencial de capturas inmediatas, fase de partida y una pequeña valoración posicional de bordes y esquinas. En las primeras fases pesa más conservar opciones; cerca del final, la diferencia real de fichas pasa a dominar.

Una CPU legal antes que una CPU espectacular.Cada nivel comparte el mismo generador de movimientos y el mismo aplicador de reglas. El selfTest() obliga a los cuatro niveles a devolver siempre un movimiento válido.

Clonación y salto se ven distintos

La interfaz ya no obliga a memorizar la regla. Al seleccionar una ficha, los destinos de clonación aparecen con un tratamiento y símbolo distintos de los destinos de salto. La última jugada queda marcada y las fichas convertidas tienen una transición breve. Las fichas humanas son circulares y las de la CPU tienen forma de rombo, para que el estado no dependa únicamente del color.

El tablero es navegable con teclado: las flechas mueven el foco, Enter o Espacio seleccionan y juegan, y Escape cancela la selección. Cada casilla expone fila, columna, propietario y, cuando procede, si es destino de clonación o salto.

Deshacer significa deshacer una ronda

En un juego contra CPU, deshacer sólo el movimiento de la máquina sería una ventaja artificial, porque el jugador ya conocería la respuesta. Deshacer sólo la jugada humana dejaría un estado incoherente. Por eso el historial trabaja por rondas: retrocede tu movimiento y la respuesta de la CPU como una unidad.

La misma decisión simplifica la persistencia. Si la página se recarga justo después de tu jugada y antes de la respuesta del sistema, el estado se guarda como turno de CPU. Al volver, la máquina continúa exactamente una vez. Ocultar la pestaña detiene el cronómetro activo y cancela cualquier temporizador pendiente hasta recuperar visibilidad.

Qué comprueba el selfTest

  • La posición inicial contiene dos fichas por jugador y genera exactamente 16 movimientos legales para el primer jugador.
  • Clonar conserva el origen y aumenta el número de fichas.
  • Saltar vacía el origen y mantiene el número de fichas antes de las conversiones.
  • Una jugada puede convertir correctamente varias fichas adyacentes a la vez.
  • Los cuatro niveles de CPU sólo producen movimientos presentes en el generador legal.
  • Se verifican estados terminales y posiciones donde un jugador debe pasar porque no dispone de movimientos.

De Infection a Ataxx

El concepto fue creado por Dave Crummack y Craig Galley en 1988 para un proyecto llamado Infection. Aquellas versiones para ordenadores domésticos no llegaron a publicarse comercialmente entonces. Virgin Mastertronic licenció posteriormente el diseño y Leland lo llevó a recreativas con el nombre Ataxx a comienzos de los noventa.

La versión arcade reforzó precisamente la dirección que nos interesa en PuzzleHub: juego individual contra oponentes controlados por la máquina. También utilizó obstáculos variables entre rondas. Esa idea queda documentada para una futura familia de variantes, pero la primera implementación completa conserva deliberadamente el tablero clásico sin barreras.

Un patrón para los otros cinco juegos competitivos

Ataxx no termina sólo Ataxx. Deja preparados los conceptos que después necesitamos en Hex, Dots and Boxes, Nine Men's Morris, Twelve Men's Morris y Order and Chaos: resultados competitivos, balance contra CPU, dificultad del rival, máquina de estados de turno, persistencia durante el pensamiento de la IA y una página de estadísticas capaz de distinguir resolver de competir.

Fuentes

Ataxx — Wikipedia: reglas, tablero 7×7, origen en Infection y cronología de Dave Crummack, Craig Galley, Virgin Mastertronic y Leland.

Arcade History — Ataxx: descripción del arcade, clonación, salto, conversión y uso de obstáculos variables entre rondas.

Jugar Ataxx contra la CPU