Si NUBO va de decidir en qué orden repartes la lluvia, Mewline va de algo todavía más sencillo de explicar: un hilo de lana, unos números y un tablero que hay que cubrir entero. Es de esos puzles de lógica que juegas en un rato muerto, con partidas de uno a tres minutos.
Mango es una gata naranja atigrada, curiosa y un poco torpe, que se pasa el día desenrollando ovillos por la casa. Arrastras el dedo desde el 1 y el hilo te sigue: tiene que pasar por todas las baldosas, visitar los números en orden y terminar en el último.
La gracia está en que cada tablero tiene una única solución, y se llega a ella pensando, nunca adivinando. Aquí no hay vidas ni derrota: si te equivocas, vuelves por el hilo, lo recoges y sigues. Lo que aprieta son el reloj y las estrellas.
Como NUBO, está hecho con Godot 4.7 y GDScript, en vertical y para Android. Más abajo puedes jugar uno de sus niveles sin salir de esta página.
- 180niveles en 6 habitaciones
- 5objetos de la casa
- 10gatas para elegir
- 180/180soluciones únicas comprobadas
// Android
Próximamente en Google Play
Gratis · Sin anuncios forzados · Sin conexión · Español e inglés
Así se juega
Las reglas son cuatro:
- Empieza en el 1 y arrastra el hilo a las baldosas vecinas, sin diagonales.
- No se cruza: el hilo no puede pasar dos veces por la misma baldosa.
- Los números van en orden, y el hilo termina en el último.
- Cubre todo el tablero. Si te equivocas, vuelve por el hilo para recogerlo o toca un punto para cortarlo ahí.
Cada nivel da hasta tres estrellas: una por completarlo, dos si es sin pistas y tres si además lo haces en el tiempo objetivo. Las estrellas nunca bloquean nada: para avanzar basta con completar el nivel.
El inicio
La cocina
Tres estrellas y regalos
La casa de Mango
El jardín: dos gatas
El desván a oscuras
El reto diario
Las gatas
Seis habitaciones, un objeto nuevo en cada una
La campaña es la casa de Mango, habitación por habitación. Cada una es un mundo de 30 niveles con su decorado y un objeto nuevo que cambia la regla. Llega con dos o tres niveles muy fáciles para presentarlo y después se mezcla con todo lo anterior.
Dentro de cada habitación la dificultad sube en dientes de sierra: cuatro niveles que aprietan y uno de respiro. El 30 es un jefe, más grande que los demás, y al terminarlo Mango se queda dormida en esa habitación.
-
Habitación 1 4×4 → 6×6El salón
Solo la regla: números en orden y todas las baldosas cubiertas.
-
Habitación 2 5×5 → 6×6La cocina
Muebles: cortan el paso entre dos baldosas y obligan a rodearlos.
-
Habitación 3 6×6 → 7×7El dormitorio
Cojines: el hilo los cruza recto, sin girar encima.
-
Habitación 4 6×6 → 7×7El baño
Rascadores: lo contrario del cojín. Encima, el hilo tiene que girar.
-
Habitación 5 7×7 → 8×8El jardín
Dos gatas: dos ovillos, cada uno con sus números, que no se pueden cruzar.
-
Habitación 6 7×7 → 9×9El desván
Baldosas oscuras: esconden lo que hay debajo hasta que el hilo pasa al lado.
Además de la campaña, hay un reto diario igual para todo el mundo y un modo libre con tableros infinitos de 5×5 a 9×9 que mezclan los objetos que ya conoces.
Pruébalo: el nivel 44
En la cocina hay un nivel que me gusta especialmente. Es un 5×5 con solo cinco números y cuatro muebles, así que casi todo el camino lo tienes que deducir tú. Y el primer paso ya esconde una trampa.
Aquí lo tienes, con las reglas, los mensajes y el arte del juego:
Nivel 44 · La cocina
Une los números del 1 al 5 y cubre las 25 baldosas. Arrastra desde el 1. Para corregir, vuelve por el hilo o toca un punto para cortarlo ahí. También puedes usar las flechas del teclado con el tablero enfocado. Para la tercera estrella: sin pistas y en 19 segundos.
La solución no viene guardada en la página. Al cargarla, un backtracking con la misma poda que el solucionador del juego la busca y demuestra que es la única. Para ello explora 51 nodos, los mismos que cuenta el de Godot en este nivel.
¿Dónde está la trampa? (contiene pistas)
El 2 está a dos baldosas del 1, a la izquierda, y apetece ir directo a por él. Pero fíjate en la baldosa que hay justo encima del 1: tiene un mueble a cada lado, así que solo se puede entrar en ella desde arriba o desde el propio 1.
Si no la pisas al empezar, el día que llegues desde arriba ya no podrás salir: sería un callejón sin salida, y el único sitio donde el hilo puede terminar es el 5. Así que el primer paso está obligado: hacia arriba, y el segundo también. Es exactamente la regla que usa el solucionador para descartar caminos, y es la que hace que el nivel tenga una sola solución con tan pocos números.
Un solucionador que demuestra que solo hay un camino
Como en Shadow Maze y en NUBO, lo que más he disfrutado no se ve. El problema de un puzle como este es muy concreto: ¿cómo sabes que cada tablero tiene una sola solución? Si tuviera dos, el jugador podría llegar a la «otra» y el juego no la aceptaría, o habría que adivinar en algún punto. Con 180 niveles, un reto al día y un modo libre infinito, a ojo es imposible.
Mewline empezó como un prototipo en una sola página web, con su generador y su solucionador. Lo primero que hice al pasar a Godot fue portarlos a GDScript, y las pruebas comprueban que con la misma semilla salen exactamente los mismos tableros. La demo de arriba es el viaje de vuelta: el mismo solucionador, otra vez en JavaScript.
El solucionador es un backtracking: desde el 1, prueba cada vecina libre, avanza y, si se atasca, deshace el paso y prueba la siguiente. Contado así explotaría enseguida, porque un 7×7 tiene una cantidad enorme de caminos. Lo que lo hace viable es la poda: después de cada paso mira el tablero que queda y descarta la rama en cuanto es imposible terminarla, aunque aún falten veinte baldosas.
- CallejónUna baldosa libre con una sola salida tiene que ser el final del hilo. Si no es el último número, la rama se descarta.
- IslaLas baldosas libres tienen que seguir unidas. Si el hilo las parte en dos grupos, nunca podrá volver a por uno de ellos.
- Fuera de ordenUn número solo se pisa cuando le toca, y el último solo cuando ya está todo cubierto.
Las tres podas del solucionador. En ámbar, lo que hace imposible terminar el tablero desde ahí.
Con eso, el generador es sencillo. Primero saca un camino aleatorio que cubre todo el tablero. Parte de un zigzag y le aplica miles de backbites: une un extremo del camino con una baldosa vecina e invierte el tramo de en medio, de modo que sigue pasando por todas. Después pone un número cada pocos pasos y le pregunta al solucionador:
# Pone números a lo largo de `path` hasta que la solución sea única.
# Simplificado de generator.gd: sin cojines, rascadores
# ni búsquedas abortadas.
static func _place_numbers(path, neighbors, gap, rng):
# El 1 y el último, siempre; luego uno cada `gap` pasos, más o menos uno.
var indices := {0: true, path.size() - 1: true}
var i := gap
while i < path.size() - 1:
indices[mini(path.size() - 2, i + rng.next_int(3) - 1)] = true
i += gap
for _try in MAX_TRIES_PER_PATH:
var sorted := indices.keys()
sorted.sort()
var checkpoints := PackedInt32Array()
for index in sorted:
checkpoints.append(path[index])
# Con 2 soluciones basta para saber que no es única.
var result := Solver.solve(neighbors, checkpoints, 2)
if result.solutions.size() == 1:
return checkpoints
# Hay otra: un número justo donde se separa del camino bueno.
var alt := _first_different(result.solutions, path)
var d := 0
while alt[d] == path[d]:
d += 1
indices[mini(path.size() - 2, d + rng.next_int(2))] = true
return PackedInt32Array() # se prueba con otro camino
Cada vez que el solucionador encuentra una segunda solución, el generador pone un número justo en la baldosa donde se separa del camino bueno, y vuelve a preguntar. Los muebles se colocan en uniones que el camino no usa, así que nunca rompen la solución. Con ellos el tablero se resuelve con unos dos números menos, porque las paredes ya descartan caminos.
Al revés para los tableros grandes
En 8×8 y 9×9 ese método se ahoga: cada pregunta al solucionador cuesta millones de pasos, y un 9×9 podía tardar minutos o no salir nunca. Así que para los grandes lo hago al revés: pongo un número cada tres pasos, añado los que falten hasta que la solución sea única y luego los voy quitando al azar mientras siga siéndolo, sin bajar de una sexta parte de las baldosas. Un 9×9 sale ahora en unos 3 segundos en el PC.
También aceleré el solucionador, con una condición que no podía saltarme: explorar exactamente los mismos nodos, en el mismo orden. Si cambiaba un solo nodo, cambiarían los tableros generados y el reto diario dejaría de ser el mismo en todos los móviles. Así que las optimizaciones solo abaratan cada nodo: llevar la cuenta de vecinas libres en vez de recontarlas, revisar solo las baldosas que el último paso puede haber cambiado y comprobar la conexión cerca de la cabeza del hilo en vez de recorrer todo el tablero. Una prueba lo compara con el port original, y un 8×8 ha pasado de 165 a 27 segundos.
Dos gatas, un solo camino
En el jardín hay dos ovillos que no se pueden cruzar y que entre los dos cubren el tablero. Podría haber escrito un solucionador nuevo, pero hay un truco más barato: una baldosa puente que no existe en el tablero y que solo toca el último número del primer hilo y el 1 del segundo. Con ella, los dos hilos son un único camino, y el solucionador, el generador y la puntuación de dificultad funcionan sin cambiar una línea. Una prueba compara el resultado con una búsqueda a mano de todos los pares de hilos.
La dificultad, en números
El mismo solucionador sirve para medir. La dificultad de un tablero suma su tamaño, la distancia media y máxima entre números, cada objeto de la casa y, sobre todo, cuántos nodos necesita el solucionador para demostrar que la solución es única, empezando por el 1 y también por el final. Va de unos 8 puntos en un 4×4 lleno de números a unos 90 en el jefe del desván.
Con esa nota se monta la campaña: los niveles se generan por lotes en el ordenador y, para cada hueco de la curva, se elige el tablero que más se acerca a la dificultad buscada. Una prueba comprueba que los 180 tienen solución única, que la curva hace sus dientes de sierra y que el jefe es siempre el más difícil de su habitación.
El tiempo de la tercera estrella sale del mismo número. En partidas cronometradas de los primeros niveles, el tiempo crece de forma exponencial con la dificultad: unos 4 segundos en dificultad 10, 10 en 25 y 25 en 42. El objetivo es ese tiempo con un margen de 1,5, y nunca menos de 8 segundos. Por eso el nivel 44, con 29,9 puntos, pide 19.
El reto diario, sin servidor
Cada día hay un tablero nuevo, el mismo para todo el mundo, y no hay ningún servidor detrás. La semilla sale de la fecha y el generador es determinista, así que cualquier móvil llega al mismo tablero por su cuenta. Para no hacer esperar a nadie, los retos del año ya van generados y validados dentro de la app.
La dificultad sube durante la semana, como en el crucigrama del New York Times:
- Lun5×5
- Mar5×5
- Mié6×6
- Jue6×6
- Vie7×7
- Sáb7×7
- Dom8×8
El domingo es un 8×8 con ocho muebles. Alrededor del reto hay una racha, un calendario del mes para recuperar los días que se te pasaron y un regalo por cada semana y cada mes completos. Los tiempos van a una clasificación de Play Juegos, que se encarga de apartar los sospechosos, y el resultado se comparte con una imagen que enseña el tablero sin la solución, para no destripárselo a nadie.
Diez gatas y seis lanas
Mango es la protagonista, pero no está sola. La siamesa se gana al terminar el salón y el resto esperan en la tienda. La gata elegida sale en el tablero, en la celebración y en la imagen que compartes.
Mango
Siamesa
Bengalí
Calicó
Gris azulada
Blanca con manchas
Atigrada parda
Carey
Crema
Plateada
Las lanas cambian el color del hilo, de las baldosas que recorre y de los números que pisa. Las estrellas regalan las primeras:
- Frambuesa
- Menta
- Azul cielo
- Mostaza
- Lila
- Pistacho
Pensado para ratos tranquilos
Todo lo que rodea a los tableros va en la misma dirección: que nada te meta prisa y que nada salte sin que lo pidas.
- Sin vidas ni derrotaUn camino equivocado se corrige recogiendo hilo. La tensión la ponen el reloj y las estrellas, nunca un castigo.
- Pistas con huellasUna pista enseña los tres pasos siguientes y, si te habías equivocado, recoge el hilo hasta el último paso bueno.
- Anuncios solo si los pidesUn vídeo a cambio de una pista, como mucho diez al día. Ni banners ni anuncios al terminar un nivel.
- La casa no se vendeTodas las habitaciones se juegan gratis. Lo que se compra son ayudas y aspecto: pistas, gatas y lanas.
- Sin conexiónTodo funciona sin internet, salvo los vídeos, las compras y la clasificación. El progreso viaja en la nube con Play Juegos.
- Para todos los ojosTema claro y oscuro, alto contraste y vibración ajustable.
El tráiler
Treinta segundos para verlo en movimiento. Lo graba el propio juego: el Movie Maker de Godot captura una partida real fotograma a fotograma, y la música, un lo-fi corto, también está compuesta por código.
Mango ya tiene el ovillo preparado
Mewline llegará muy pronto a Google Play.
¿Dudas sobre tus datos, los anuncios o las compras? Están explicadas en la política de privacidad.