Built with love.js
Juego de Tornos es un juego de lógica que consiste en mover unas fichas o personajes por un tablero cuadriculado hasta llevarlos a sus casillas de destino, girando si hace falta tornos con uno, dos, tres o cuatro brazos. La mecánica es la del juego Turnstile™ de ThinkFun, inventado por Steve Hayton, pero los retos propuestos son diferentes. Además, algunos retos no se pueden jugar con el juego físico, debido a que este no incluye todos los tornos necesarios.
Cada personaje o ficha se puede mover a una casilla contigua desocupada (no en diagonal), pero si al hacerlo debe empujar un torno, este debe girar sin tropezar con otra ficha o torno.
Puede haber entre una y cuatro fichas de color, que deben terminar en las casillas de las esquinas. También puede haber fichas grises que ayudan o estorban en la misión, pero que da igual en dónde terminen.
Hay una versión web, que se puede jugar arriba en línea, y una versión de escritorio descargable, con algunas ventajas:
Las soluciones se graban permanentemente en el disco duro, estando disponibles de una sesión a otra.
Hay un conjunto adicional de retos.
Se puede jugar cualquier otro reto, definido mediante una sintaxis especial (véase abajo) y leyendo dicha definición desde el portapapeles con Ctrl-V.
La versión web dispone de 60 retos, agrupados en cuatro niveles de dificultad: Iniciación, Intermedio, Avanzado y Experto. La versión descargable incluye un conjunto adicional con otros 60 retos, 15 de nivel Genio.
La versión de escritorio está escrita usando el framework LÖVE basado en el lenguaje de programación Lua y se distribuye con licencia CC BY-SA 4.0.
La versión web está creada a partir de la de escritorio usando love.js.
Código fuente (se puede ejecutar directamente en cualquier sistema si está instalado LÖVE)
Se puede quitar y poner el sonido haciendo clic en el dibujo del altavoz, en la esquina superior izquierda o pulsando la tecla X.
Se puede cambiar el modo de visualización entre fichas y personajes haciendo clic en el dibujo a la derecha del altavoz, en la esquina superior izquierda, o pulsando la tecla F.
En la versión de escritorio, se puede acceder al conjunto extra de retos haciendo clic sobre el signo + a la derecha del dibujo anterior o pulsando la tecla M.
Además de la zona de opciones de la esquina superior izquierda antes mencionada, la pantalla del juego se divide en cinco zonas, que de arriba abajo son:
Zona de selección de reto. Se puede cambiar el reto y se indica el actual.
Zona de movimientos. Se puede avanzar y retroceder por la lista de movimientos hechos hasta el momento, reiniciar el reto o cargar y ejecutar su solución, si ya se ha resuelto antes. Entre paréntesis aparece el número mínimo de movimientos necesarios, precedido, cuando ya se ha resuelto, por el número de movimientos de la solución. Cuando se vuelve a resolver con menos movimientos se sobreescribe la nueva solución. La versión web no conserva las soluciones de una sesión a otra.
Zona de juego. Es el tablero por el que se mueven los personajes o fichas. Las casillas de destino están marcadas con los colores correspondientes.
Zonas de información. Debajo del tablero hay dos zonas con información. En la superior se nuestra el estado de juego, que puede ser «Jugando» o «¡RESUELTO!». En la inferior se muestran otros mensajes como la ficha seleccionada o la razón que impide un movimiento.
El manejo se puede hacer con ratón o con teclado.
Para seleccionar una ficha se puede hacer clic sobre ella o pulsar la letra o número que la identifica. Las fichas de color se identifican mediante letras de la A a la D, las grises por números entre 1 y 4. Para ver estas letras y números hay que pulsar la tecla V en el modo de fichas (no de personajes).
Para mover la ficha seleccionada se puede hacer clic en su misma fila o columna o pulsar las teclas de dirección (marcadas con flechas). Los tornos no se mueven directamente, solo cuando son empujados por una ficha o personaje.
Además de hacer clic en los iconos que están a izquierda y derecha del identificador del reto actual (< y >), se pueden pulsar las teclas P para el reto previo y N para el siguiente (nuevo). En cualquiera de los casos, se puede ir directamente al primer reto del nivel anterior o siguiente pulsando a la vez la tecla Ctrl. Cambiar de reto destruye la lista de movimientos que se hayan hecho previamente.
Los iconos de la zona de movimientos se corresponden con las siguientes teclas:
Reinicio del reto: | R |
Deshacer todos los movimientos: | Mayúsculas + Tabulador |
Deshacer un movimiento: | Retroceso (Backspace) |
Rehacer un movimiento: | Intro (Enter) |
Rehacer todos los movimientos: | Tabulador |
Ver la solución: | S |
También se puede usar el ratón de la siguiente forma:
Para cambiar de reto, los botones laterales (botones números 3 y 4; no disponibles en todos los ratones).
Para deshacer y rehacer movimientos, girar la rueda.
Para probar un reto cualquiera se puede copiar en el portapapeles un pequeño texto que lo define y cargarlo en el juego mediante Ctrl-V. Esto solo funciona en la versión de escritorio.
La sintaxis es la siguiente:
[longitud] tornos fichas [-> solución]
Los corchetes indican partes opcionales.
longitud es el número mínimo de movimientos necesarios para resolver el reto.
tornos es una descripción de los tornos del reto y tiene cuatro partes:
torno_superior_izquierdo torno_superior_derecho torno_inferior_izquierdo torno_inferior_derecho
Cada torno consiste en una secuencia de entre una y cuatro de las letras N (norte), E (este), S (sur) y O (oeste). Cada letra se corresponde con un brazo del torno. Por ejemplo, un torno con un solo brazo apuntando hacia arriba se describe con la letra N; un torno de dos brazos perpendiculares apuntando respectivamente arriba y a la derecha se describe con la secuencia NE. Se puede indicar que en una de las cuatro posiciones no hay ningún torno mediante el carácter - (guion). Por ejemplo, los tornos del reto 1 se describen mediante la secuencia NO S NSO O. El orden de las letras para describir un torno no tiene importancia. El orden de los tornos sí.
fichas es una descripción de las fichas. Cada ficha se describe mediante las cordenadas de su casilla y una letra:
coordenadas letra
coordenadas consiste en dos números entre 1 y 3, indicando el primero la columna y el segundo la fila de la casilla inicial de la ficha correspondiente.
letra es una de las letras A, B, C, D o X. Las cuatro primeras indican una ficha de color (azul, morada, verde o naranja). La X indica una ficha gris. La primera X que aparezca en la definición (independientemente de su posición en el tablero) será la número 1, la segunda la 2, etc.
Por ejemplo, el reto 1 se puede definir así:
NO S NSO O 2 3 A
Opcionalmente, la definición del reto puede incluir una solución después de la secuencia «->» (guion y mayor que). La solución es una serie de movimientos, cada uno de los cuales es una letra (A, B, C o D) o número (1, 2, 3 o 4) seguido de una de las letras a (arriba), b (abajo), i (izquierda) o d (derecha).
Una definición del reto 1 con sus dos partes opcionales es:
9 NO S NSO O 2 3 A -> Ad Aa Ai Ab Aa Ai Ad Aa Ai
En este proyecto he usado los siguientes recursos gráficos y sonoros:
Los dibujos de la zona de movimientos están tomados del conjunto Public Domain Icons & Pictograms.
Los dibujos del altavoz y del más (solo en la versión de escritorio) de la zona de opciones proceden del conjunto Game Icons, distribuidos con licencia licencia CC0 1.0 por Kenney.
Los dibujos del hombrecillo que anda por el tablero empujando los tornos están creados a partir de un trabajo de isaiah658 generosamente compartido en el sitio web OpenGameart.org.
El gráfico del suelo está creado a partir de otra contribución compartida en OpenGameart.org, en este caso por el usuario FacadeGaikan.
El tick que se superpone al más (solo en la versión de escritorio) está tomado de Green Tick Vector, donde se distribuye con licencia CC BY-NC 4.0.
El sonido que se oye (obviamente, con la opción activada) cuando se intenta hacer un movimiento ilegal y otras operaciones no permitidas está descargado del sitio Free Wave Samples, de Jason Champion.
Los sonidos de aplausos y de pasos están descargados del sitio web Pixabay.