Alak fue inventado por el matemático AK Dewdney y descrito en su libro de 1984 Planiverse. Las reglas de Alak son simples:
Alak es un juego de dos jugadores que se juega en un tablero unidimensional con once máquinas tragamonedas. Cada ranura puede contener como máximo una pieza a la vez. Hay dos tipos de piezas, "x" y "o". Las x pertenecen a un jugador, las o al otro. La configuración inicial de la placa es:
xxxx___oooo
Los jugadores se turnan para moverse. En cada turno, cada jugador puede mover solo una pieza, una vez. Un jugador no puede dejar pasar su turno. Un jugador puede mover cualquiera de sus piezas a la siguiente ranura desocupada a su derecha o izquierda, lo que puede implicar saltar sobre las ranuras ocupadas. Un jugador no puede mover una pieza del costado del tablero.
Si un movimiento crea un patrón en el que las piezas del oponente están rodeadas, en ambos lados, por dos piezas del color del motor (sin ninguna ranura vacía desocupada que interviene), entonces esas piezas rodeadas se eliminan del tablero.
El objetivo del juego es eliminar todas las piezas de tu oponente, momento en el cual el juego termina. Quitar todo menos uno también finaliza el juego, ya que el oponente no puede rodearte con una sola pieza, por lo que siempre perderá en unos pocos movimientos de todos modos.
Encontré este juego en línea y me preguntaba: ¿se puede jugar al golf?
Reglas del golf
- Su código debe seguir todas las reglas del juego, manejar capturas, movimientos adecuados, etc. (la única excepción es que no tiene que agregar un bot, pero debe tener a ambos jugadores controlados de alguna manera, y un jugador debe ser humano).
- La entrada debe ser mover la pieza en el mosaico X al mosaico Y, o salir. Por ejemplo, puede usar
1 4
para decir 'mover esta pieza en la casilla 1 a la casilla 4'.quit
terminaría el programa, aunque usar Control- Csería aceptable. También debe verificar si un movimiento no es válido (saliendo del tablero o moviéndose a un lugar en el que tendría que cruzar los espacios desocupados para llegar o enviar un mensaje que no sea un par de fichas oquit
). - Salidas para los jugadores ganadores y no válidos deben ser
P1 WINS
,P2 WINS
yINVALID
, respectivamente. (Todos estos son 7 caracteres). - La salida debe mostrar el tablero. Eso es todo lo que se requiere.
- No importa si usa ayudas como fichas numeradas u otras piezas.
El desafío termina si:
- Una respuesta obtiene 50 votos
- Una respuesta sigue siendo la mejor votada durante 3 semanas, y no se publicaron otras respuestas en ese momento
y el desafío tiene al menos 3 respuestas (por lo que hay una competencia real).
Reglas del juego
- El jugador de la izquierda debe comenzar primero.
- Solo una pieza ocupa un cuadrado a la vez. Mueves la pieza hacia la izquierda o hacia la derecha hasta que golpea un espacio desocupado. El tablero no se ajusta y no puedes moverte por las áreas desocupadas. Por ejemplo:
xoo__o
. Aquí, elx
movimiento hacia la derecha cambiaría el tablero a_oox_o
.xxooo_
. Aquí, el extremo izquierdox
podría moverse para ceder_xooox
, lo que captura elo
s, yéndose_x___x
.x__oox
. Aquí, loso
s no se capturan (todavía hay una brecha). La captura no es posible porque no puede moverse a través de espacios desocupados. Elx
de la izquierda solo podía moverse un espacio, porque no hay otras piezas en el medio (al salir_x_oox
).
- Se pueden capturar varias piezas adyacentes a la vez si el grupo está rodeado por las piezas del oponente. Por ejemplo, desde
x_oox
a_xoox
capturará amboso
y dará como resultado_x__x
. - Si después de un movimiento, primero capturas las piezas del oponente , antes de verificar si tu propia pieza debe eliminarse. Toma dos ejemplos:
o_oxx
aoxox_
. Primero, el segundoo
es capturadoox_x_
, por lo que el primerox
permanece en el tablero.o_oox
aoxoo_
. Esta vez, ninguno de loso
s se captura, por lo quex
se captura en su lugar.- Si solo tienes una pieza, el juego termina, porque no puedes capturar con solo una pieza.
¡Que empiecen los juegos! Espero ver lo que se te ocurre.