Cien Puertas - javialexis06-cyber/JUEGO-ANIVERSARIO-ESPOSA GitHub Wiki
Estado: cien puertas funcionales documentadas; las revisiones y cambios pendientes se indican en el texto. El Olvido oculta fragmentos del camino de regreso. Esta guía contiene los acertijos y soluciones documentadas; los recuerdos personales no se reproducen.
Modo de un jugador tipo escape room de celular: 100 puertas, cada una con un acertijo, repartidas en 10 capítulos con escenario propio. Quien no juega hace de narrador: si juega Él, narra Ella (y al revés). Aparece al empezar cada puerta a contar la historia, acompaña en una esquina sin estorbar y al final felicita.
⚠️ Este documento tiene las soluciones. Si van a jugarlo, mejor no leer la tabla de puertas.
| Cap. | Puertas | Escenario | Puertas que se usan |
|---|---|---|---|
| 1 | 1–10 | Nuestra casa de noche (sala con sofá, lámpara, cuadros) | de madera con pomo |
| 2 | 11–20 | El jardín de día (flores, árbol, colmena) | reja de jardín en arco |
| 3 | 21–30 | La cafetería de la historia | de vidrio con campanita |
| 4 | 31–40 | La terminal de buses | automática corrediza |
| 5 | 41–50 | La playa | cabaña de bambú que sube |
| 6 | 51–60 | El bosque de las luciérnagas (noche) | redonda en el tronco de un árbol |
| 7 | 61–70 | La feria | cortinas de carpa |
| 8 | 71–80 | El castillo de los cuentos | rastrillo de hierro que sube |
| 9 | 81–90 | Entre las estrellas (nave) | compuerta de iris |
| 10 | 91–100 | Nuestro hogar para siempre | puerta doble con forma de corazón |
Cada capítulo cambia escenario, luz, música y puerta; dentro del capítulo cambian los objetos y el acertijo. Las primeras puertas de cada capítulo presentan una mecánica nueva y las últimas la combinan con las anteriores.
Todas las que dependen de un sensor tienen una alternativa si el celular no lo tiene o no dio permiso (la pista la explica), para que nadie se quede trabado.
| Mecánica | Cómo se detecta | Alternativa |
|---|---|---|
| Inclinar |
deviceorientation / gravedad de devicemotion, girada según la orientación de la pantalla |
arrastrar |
| Sacudir | aceleración brusca repetida | tocar el objeto muchas veces |
| Boca abajo | la gravedad apunta hacia la pantalla | mantener presionada la luna/el interruptor |
| Voltear 180° | cambio de screen.orientation (paisaje ↔ paisaje invertido) |
tocar el letrero tres veces |
| Apagar y prender la pantalla |
visibilitychange (oculta → visible) |
tocar el interruptor |
| Quieto | poca aceleración durante unos segundos | no tocar la pantalla |
| Soplar | micrófono (volumen), con permiso | frotar |
| Silencio | micrófono bajo | no tocar la pantalla |
| Vibración |
navigator.vibrate con un patrón (Morse) |
la misma señal en luz |
| Hora del celular | reloj del teléfono | — (siempre existe) |
| Toques, toques rápidos, mantener, deslizar, arrastrar, frotar, dibujar, pellizcar, girar con dos dedos, dos dedos a la vez | eventos táctiles | — |
| # | Acertijo | Mecánica |
|---|---|---|
| 1 | Bajo el tapete ya no está la llave, sino una notica («ahora la guardo en un bolsillo»): tocar el abrigo del perchero, tomar la llave y usarla | arrastrar, inventario |
| 2 | Llamar según la pista de la sala: tres golpecitos y uno largo (anotado en un cuadrito de la sala; hay otro cuadrito que despista) | ritmo de toques |
| 3 | Prender las lámparas en el orden de colores del cuadro (hay una quinta lámpara, lila, que no va) | secuencia |
| 4 | La llave se perdió entre los cojines del sofá: levantarlos | deslizar |
| 5 | El timbre está pegado: tocarlo muchas veces seguidas (zumba cada vez más y al final suena ding-dong). Timbre grande con un área de toque generosa; cuenta al bajar el dedo (vale tamborilear con dos dedos): 12 toques y se descarga despacio | toques rápidos |
| 6 | Laberinto de canica en la pared: llevarla al hueco | inclinar |
| 7 | La foto de los dos rota en cuatro: armarla; atrás está el código | rompecabezas + candado |
| 8 | «Algunas cosas solo brillan en la oscuridad»: apagar la luz y leer las estrellas del techo | interruptor + código |
| 9 | El reloj de la sala («aquí siempre es ahora», dice el papelito): ponerlo en la hora del celular | girar, hora real |
| 10 | La llave cuelga de la lámpara del techo | sacudir |
| 11 | La semilla tiene sed: echarle agua con la regadera | inclinar para verter |
| 12 | Pintar las flores como las alas de la mariposa | colores |
| 13 | Topos: pegarles a ocho (más rápidos que antes) hasta que salga el de la llave | reflejos |
| 14 | Sacudir el árbol y contar manzanas rojas, verdes y amarillas | sacudir + contar |
| 15 | Soplar el diente de león: las semillas dejan ver el número | soplar |
| 16 | El caracol lleva la llave; si lo tocas se esconde | paciencia |
| 17 | Pisar las piedras del camino en el orden del dibujo | secuencia |
| 18 | El reloj de sol: mover el sol hasta que la sombra marque el corazón | arrastrar |
| 19 | Barrer las hojas para encontrar la trampilla y sus símbolos | frotar + símbolos |
| 20 | El invernadero empañado: limpiar el vidrio | frotar + código |
| 21 | Preparar el pedido del tablero en su orden | secuencia |
| 22 | Arte latte: dibujar un corazón en la espuma | dibujar |
| 23 | Equilibrar la balanza con terrones de azúcar | lógica |
| 24 | La rocola: repetir la canción (siete notas, con sonido de rocola) | memoria de sonidos |
| 25 | La cuenta con propina: el total (30) es la clave | sumar |
| 26 | El vidrio del café se empaña: soplar | soplar |
| 27 | Galletas de la fortuna: armar la palabra con sus letras | anagrama |
| 28 | Las tres tazas: seguir la que tiene la llave (nueve cambios, más rápidos) | seguimiento |
| 29 | El letrero giratorio: girarlo con dos dedos para leerlo | girar con dos dedos |
| 30 | El letrero dice CERRADO… al voltear el celular dice ABIERTO | voltear 180° |
| 31 | El mapa tiene un corazón en Cartagena: buscar su andén en el tablero de salidas | leer y deducir |
| 32 | La maleta de tres números: los sacan las calcomanías | contar + candado |
| 33 | Letras que giran en el tablero: pararlas en TE AMO («lo que siempre nos decimos», dice el letrerito) | tiempo justo |
| 34 | El torniquete: pasar el tiquete de un deslizón, ni lento ni rápido | deslizar con velocidad |
| 35 | Trazar la ruta en el mapa sin repetir carretera | camino |
| 36 | Tres relojes: poner el cuarto con la misma regla | lógica |
| 37 | El bus se mueve: sostener el celular quieto hasta que las pelotas caigan (se oyen los buses pasar) | quieto |
| 38 | La máquina de dulces: la envoltura del favorito dice B4; moneda, código y sacudirla cuando se traba | monedas + sacudir |
| 39 | La banda de maletas: tomar la que dice la etiqueta | observar |
| 40 | El túnel: cerrar los ojos (apagar la pantalla) y volver a abrirlos | pantalla |
| 41 | Ordenar las conchas de menor a mayor (así lo dibujaron en la arena) | ordenar |
| 42 | Alisar el castillo de arena | sacudir |
| 43 | La botella: inclinar para traerla; el mensaje está al revés | inclinar + espejo |
| 44 | El cangrejo tiene cosquillas | frotar rápido |
| 45 | La marea deja ver los símbolos un momento | memoria |
| 46 | Soplar el velero hasta el muelle | soplar |
| 47 | Los cocos: sacudir la palmera | sacudir |
| 48 | El faro parpadea (y el celular vibra) en Morse | vibración / luz |
| 49 | Estrellas de mar: apagar todas (cada una cambia a sus vecinas) | lógica |
| 50 | Bajar el sol: al atardecer aparece el número en las velas | arrastrar |
| 51 | Oscuridad: buscar con la linterna | arrastrar la luz |
| 52 | Las luciérnagas se prenden en orden: repetirlo | memoria |
| 53 | El búho ulula el código | contar sonidos |
| 54 | Poner el celular boca abajo: las luciérnagas se juntan | boca abajo |
| 55 | Hongos musicales: tocar la melodía tallada en el árbol | notas |
| 56 | Cruzar el tronco con la pelota en equilibrio | inclinar |
| 57 | La telaraña con rocío esconde letras | frotar |
| 58 | Ordenar las fases de la luna | ordenar |
| 59 | La puerta del árbol solo abre con los ojos cerrados cinco segundos | pantalla apagada |
| 60 | El árbol pregunta una adivinanza | tocar la respuesta |
| 61 | Tiro al blanco | tiempo justo |
| 62 | La rueda de la fortuna: alinear los colores | girar |
| 63 | Algodón de azúcar: dar vueltas con el dedo | dibujar círculos |
| 64 | La máquina de peluches | inclinar + tocar |
| 65 | El martillo de fuerza (cuenta al bajar el dedo, mazo con área de toque grande, meta 16 y se descarga despacio) | toques rápidos |
| 66 | Las cartas de la adivina: parejas | memoria |
| 67 | Reventar los globos en orden | orden |
| 68 | El carrusel: tocar el caballito de la llave cuando baje | tiempo justo |
| 69 | La casa de los espejos: el código está al revés | espejo |
| 70 | El tiquete tiene la clave en letra diminuta | pellizcar para ampliar |
| 71 | El puente levadizo: bajar las dos cadenas a la vez | dos dedos |
| 72 | El dragón dormido: sacar la llave despacito y sin ruido | arrastrar lento / silencio |
| 73 | Apagar las velas soplando: aparece lo escrito | soplar |
| 74 | Girar los espejos para llevar la luz a la gema | lógica |
| 75 | Vestir la armadura | arrastrar |
| 76 | El caballo de ajedrez | lógica |
| 77 | El escudo distinto | observar |
| 78 | La poción del color pedido | mezclar colores |
| 79 | El criptex: girar los anillos hasta BESO | girar |
| 80 | La torre: bajar la trenza | deslizar repetido |
| 81 | Unir las estrellas en forma de corazón | trazar |
| 82 | Gravedad cero: guiar la llave entre la basura espacial | inclinar |
| 83 | Ordenar los planetas | ordenar |
| 84 | Sintonizar la radio hasta oír el código | girar + oído |
| 85 | La nave vibra en Morse | vibración |
| 86 | «En el espacio no hay arriba»: voltear el celular | voltear 180° |
| 87 | Asteroides: disparar hasta abrir paso | toques rápidos |
| 88 | Llevar la energía girando los tubos | lógica |
| 89 | El cohete: mantener el botón exactamente tres segundos | mantener |
| 90 | El eclipse: poner la luna justo encima del sol | arrastrar |
| 91 | Ordenar las fotos de nuestra historia | ordenar (memoria de los capítulos) |
| 92 | Los recuerdos ganados forman el código | meta-acertijo |
| 93 | La carta cifrada y la rueda para leerla | girar |
| 94 | El jardín de la casa: agua y sol | inclinar + arrastrar |
| 95 | El piano de colores | notas |
| 96 | La torta del aniversario: ingredientes y velas | orden + soplar |
| 97 | La caja musical: darle cuerda parejo | dibujar círculos |
| 98 | «Cierra los ojos y pide un deseo» | pantalla apagada |
| 99 | Todo junto: inclinar, sacudir y tocar | combinado |
| 100 | La puerta del corazón: los dos pulgares juntos cinco segundos | dos dedos + mantener |
Después de la narradora, la puerta 1 se juega con un globo y una flecha que señalan qué hacer: arrastrar el tapete, leer
la notica, tocar el abrigo, guardar la llave en el bolsillo y usarla en la puerta (y que el dulce 🍬 de arriba se cambia
por pistas). Cada paso espera a que se haga; se puede saltar. Con un candado o una nota abierta el globo se esconde.
Solo jugando solo; no sale con ?sinhistoria=1 ni ?sintutorial (las pruebas). Queda anotado en el aparato
(cien-puertas-tutorial); código en src/puertas/tutorial.ts.
- Primera vez que se abre una puerta: +1 moneda para la casa (pasa como el sueldo del súper). Terminar un capítulo: +10 (un cuarto de lo que era: la casa se gana despacio). Cada cinco puertas vuelve un recuerdo nuevo al álbum del mapa.
- Estrellas por puerta (1–3) según el tiempo; con la pistica del caramelo, máximo 2; con una pista más grande, 1. No bloquean nada.
El narrador no regala pistas. El botón rosado del caramelo (arriba a la derecha, siempre está; late después de un minuto) abre sus antojos: se le compra un dulce con monedas de la casa y, según lo que cueste, suelta una pista más chica o más grande. Nunca la respuesta: ni la clave, ni el orden exacto.
| Dulce | Precio | Pista |
|---|---|---|
| Un caramelo | 4 | 1: un empujoncito («Algo en este jardín tiene mucha sed») |
| Chocolates | 10 | 2: más clara (dónde mirar, qué se puede hacer) |
| Fresas con crema | 20 | 3: la grande (cómo se hace, sin dar la clave) |
- Cada puerta tiene sus tres pistas en
pistas(src/puertas/niveles/capNN.ts). Lo que ya dijo se puede volver a leer en el mismo panel gratis; los dulces de pistas ya dadas (o más chicas) no se venden otra vez. - El dulce vuela hasta el narrador, se lo come (pose de comer, mordiscos), guiña el ojo y dice la pista en su globo. Si no alcanza la plata, se cruza de brazos con puchero («¿Sin dulce? Así no se vale, mi amor»).
-
De dónde sale la plata (
src/puertas/monedero.ts,saldo()ygastarMonedas(n)): primero del sobre del sueldo (nuestro-hogar-sueldo, lo ganado en los minijuegos que todavía no llegó a la casa) y el resto de la casa compartida: si la casa es local se cobra conSincroLocal; si es en línea, con la misma sesión de la casa (conexionPareja()yguardar_casacon la versión leída, como la casa). Sin conexión solo alcanza el sobre. Si la casa llega a tener su propio ayudante para cobrar desde otras páginas, se cambia solo en ese archivo.
Cada puerta riega entre 9 y 12 cosas del escenario (src/puertas/desorden.ts): libros, jarrones, cojines y portarretratos
en la casa; materas, gnomos y regaderas en el jardín; tazas, platos y jarras en el café; maletas y conos en la terminal;
baldes, cocos y conchas en la playa; hongos, farolitos y tronquitos en el bosque; bolos y palomitas en la feria; copas,
barriles y cascos en el castillo; herramientas, robotitos y pantallitas en la nave. Algunas van colgadas en la pared y
otras encima de un cajón o un banquito.
- Todo se mueve: se toma con el dedo, se arrastra y se lanza (sale con la velocidad del dedo; lanzar hacia arriba también lo manda contra la pared del fondo). Hay gravedad, rebote (las pelotas rebotan más), roce con el piso y paredes; las cosas caen encima de los muebles del acertijo y de otras cosas. Un toque suelto las hace saltar.
- Lo frágil se rompe: jarrones, platos, tazas, vasos, botellas, materas, frascos, copas, bombillos, portarretratos y espejos se hacen pedazos (con sonido de vidrio) si se estrellan a más de 5 m/s contra el piso o una pared; los pedazos saltan y se desvanecen a los tres segundos.
-
Esconden cosas: debajo de algunas hay una notica de amor, una cosita perdida (un arete, un botón…) o una pista
falsa del capítulo (
FALSAS: parecen claves —«Cajita: 3 · 9 · 2», «Andén 7 → Bogotá»— pero no abren nada). - Los papelitos se dejan leer siempre: son una notica doblada como carpita (la cara de adelante mira a la cámara, así se ve aunque el piso quede de lado), con sombrita y un aro de luz que late; se ponen encima de lo que haya en el piso (un tapete o una alfombra del acertijo: antes podían quedar debajo), tienen un área de toque generosa y prioridad de toque (aunque algo les quede encima, el toque les llega), y al aparecer quedan protegidos: nada se queda quieto encima. La nota que sale es grande, de papel de cuaderno (la pista falsa en un pos-it arrugado), con cinta, firma de quien la escribió y se despliega; un segundo toque seguido ya no la cierra por error (antes un doble toque la abría y la cerraba al tiempo). Por qué fallaban: quedaban debajo del tapete o de la cosa que las tapaba, la cosa que se corría se robaba el toque, eran planas y casi no se veían desde la cámara, y el doble toque.
- Nunca tapan: se acomodan con una rejilla de la pantalla donde se pinta la puerta con su marco, todo lo del acertijo (también lo que aparece después, como una llave que cae), la interfaz y donde se para el narrador. Si algo lanzado queda quieto tapando la puerta o algo importante (ver «Nada tapa lo importante»), o medio fuera de la pantalla (cerca de la cámara el cuarto es más ancho que lo que se ve), salta solito al sitio libre más cercano: uno al que el saltico llegue sin chocar (se sigue la misma parábola del salto contra los muebles y las otras cosas: si no, rebotaba en el marco de la puerta o en el borde de la mesa y volvía a caer donde estaba); si cerca no hay, busca en todo el cuarto; si tampoco, da un salto alto por encima de las cosas chiquitas; y si nada, vuelve a donde estaba al principio (si ahí quedó a la vista lo que escondía, el papelito se asoma solo). Hasta 6 intentos. El narrador, al caminar, empuja lo que tenga en los pies.
- Los papelitos se asoman: si algo les queda encima o delante, o quedaron detrás del narrador en su esquina (se mide con rayos a puntos de todo el papelito), se corren hacia adelante, a los lados o hacia atrás, a un sitio de la pantalla que no esté debajo de un mueble, hasta que se vean.
- Celular: cada cosa es una sola malla con colores por vértice (una llamada de dibujo) y geometría en caché; la física corre a pasos fijos solo para lo que está despierto y todo se duerme al quedarse quieto.
- Un nivel puede pedir menos cosas o ninguna con
desorden: { cuantas }odesorden: { nada: true }.
Todo sintetizado (src/puertas/sonidos.ts, sobre nota y rumor de src/sonido.ts): el ding-dong del timbre (y su
zumbido trabado), los golpes en la madera, el tic tac y el cucú del reloj, el interruptor, las lámparas, el agua de la
regadera, los topos, la rocola, los hongos cantores, el ronquido del dragón, el choque de la armadura, la bocina del
faro, las olas, el piano y la caja musical de verdad, y lo que se rompe. Cada escenario tiene un ambiente bajito
(pájaros en el jardín, tazas en el café, buses en la terminal, olas y gaviotas en la playa, grillos en el bosque),
menos en las puertas donde hay que oír y contar (el búho) o que ya tienen su propio sonido (los buses de la 37).
Zonas protegidas (src/puertas/protegidas.ts). Cada puerta tiene cosas que nunca pueden quedar tapadas, y se
deducen solas: la puerta, todo lo que se toca, se arrastra o se mantiene, los letreros, cuadros y notas pintados (ahí
van las pistas y las claves), los papelitos y cositas que se encuentran, y lo que el nivel marca a mano con
c.proteger(obj) (las estrellas de la puerta 8). Con eso:
- El desorden no se riega encima ni se queda quieto encima (si cae ahí, salta al sitio libre más cercano).
- La decoración fija del escenario que tape algo importante se quita mientras dura esa puerta (
despejar: las piezas sueltas que se tocan entre sí van juntas, como la lámpara con su cable). - La puerta 8 («Lo que brilla en la oscuridad»): las estrellas que forman 4-1-7 estaban arriba, detrás de la lámpara del techo y del corazón de la puerta. Ahora brillan a la derecha de la puerta, encima de la cajita, con un resplandor suave, donde nada las tapa (y las de adorno quedaron lejos del número).
- Revisión con rayos (
revisarImportantesenrevisar.ts): desde la cámara se lanzan rayos a puntos de cada cosa importante (en la vista general y en cada acercamiento que use el nivel) y se cuenta qué los tapa: la decoración, el desorden, el narrador en su esquina, otra pieza del acertijo que no se toca, la interfaz (los botones, el inventario con una cosa) o el borde de la pantalla. Lo que el acertijo esconde a propósito detrás de algo que se toca (la llave entre los cojines), lo enterrado (los topos en su hueco), lo que se ve a través (vidrios, brillos) y el piso, la arena o el mar no cuentan.
Lo de siempre de la puerta:
- La lámpara del techo de la casa cuelga a un lado (
LAMPARAencuarto.ts), los muebles de los acertijos están a los lados de la puerta, el narrador cuenta la historia desde un lado y celebra sin taparla, su globo se acomoda entre el borde de la pantalla y la puerta, el inventario va en columna a la derecha y los avisos abajo a la izquierda. - Globos (
Globoenui.ts, arreglados el 11 de octubre de 2026): la frase completa ocupa su sitio desde la primera letra (lo que falta va invisible,.globo-resto) y «toca para seguir» guarda su lugar, así el globo sale con su tamaño y no crece ni brinca mientras se escribe. Mientras el narrador habla (body.con-dialogo), el letrero de la puerta, la ficha de la pareja y el tutorial se apartan. Los globitos de los ánimos esquivan lo que haya arriba (el letrero, los botones, la tarjeta del tutorial): se corren a un lado o se bajan lo justo.window.__puertas.narrador()deja probarlos (animar,conversar,susto…). - Revisión automática:
window.__puertas.tapan()pinta en una rejilla de la pantalla las hojas de la puerta y cuenta qué se les cruza desde la vista de siempre (objetos del cuarto y del acertijo, el desorden, el narrador contando, en la esquina y celebrando, y la interfaz con textos largos de prueba).node scripts/_puertas_tapan.mjs 1 100lo corre en 844×390, 740×360 y 1024×768 (con?revisar=1, sin dibujar). Lo que es parte de la puerta (las cadenas de la reja, el aro de luz de la compuerta, el brillo del corazón) se llamamarco…y no cuenta.
scripts/revisar-puertas.mjs (con el servidor de Vite andando) recorre las puertas una por una con el desorden
puesto y varias semillas (?semilla=N cambia el reguero), resuelve cada una con su prueba automática (toques y
sensores de verdad) y registra lo que falle: la prueba no pasa o se traba, el panel no abre, la puerta no se abre,
algo tapa la puerta o algo importante (con los rayos de arriba, también en los acercamientos), cosas que quedaron fuera
del cuarto o con posiciones rotas, y errores de la página. Con --revolver antes de resolver tira todo el desorden
por el aire y revisa otra vez cuando se queda quieto; con --fotos guarda una foto de cada puerta (sin fotos corre sin
dibujar, mucho más rápido). El informe queda en <carpeta>/informe.json.
PUERTO=5173 node scripts/revisar-puertas.mjs 1 100 --semillas=0,1,2 --revolver [--fotos]
La revisión mira cuando todo quedó quieto (y otra vez medio segundo después, porque el narrador al caminar a su
esquina puede empujar algo). Lo que va y viene solo (la botella entre las rocas, el carrusel) se marca con
userData.seMueve y lo que tapa a propósito (la tapa con ventanita del letrero giratorio) con userData.tapaAdrede:
eso no cuenta como tapado. Con DEPURAR=1 imprime dónde quedó cada cosa del reguero cuando algo tapa la puerta.
Pasada completa con --semillas=0,1,2 --revolver (300 puertas): de 46 fallas a 0 (y la prueba en pareja,
probar-puertas-linea.mjs, toda bien). Lo que salió y cómo quedó:
- Puerta 44 (el cangrejo): lo rápido que se frota se mide con el reloj de verdad (lo rápido es del dedo, no de la escena). Puerta 97 (la caja musical): el ritmo de los círculos también va con el reloj de verdad y se mide en una ventanita de 0,4 s: si el celular se atasca un momento y los toques llegan juntos, ya no cuenta como «muy rápido» y la cuerda no se devuelve. Puerta 56 (el equilibrio): la pelota avanza en pasitos de 8 ms como mucho, así un cuadro lento no la hace saltar de golpe (el roce es el mismo por segundo). Además se abría sola si nadie tocaba nada (la pelota se quedaba quieta en el centro): ahora la tabla se mece sola un poquito y la barrita solo se llena mientras uno la está equilibrando; al caerse se pierde más.
- Puerta 8 (la cajita fuerte): era un bloque macizo y la llave aparecía adentro del bloque: no se veía y, en pareja, el toque se quedaba en la caja. Ahora la cajita es hueca, con forro oscuro, bisagras y un cojincito rojo donde está la llave.
- El desorden que tapaba la puerta o los papelitos después de revolverlo todo (puertas 4, 19, 21, 24, 29, 44, 71, 74, 79, 86, 91, 96, 97 y 99): ver «Nunca tapan» y «Los papelitos se asoman» arriba.
-
Los avisos de abajo salían en una columnita de una palabra por línea: el
.avisode la casa (las burbujitas de las necesidades, de 34 px) también se carga en Cien Puertas. Ahora el de las puertas va con su id y manda. - Puerta 14: el árbol de manzanas, un poco más bajito para que la copa quepa entera. Puerta 23: los platillos de la balanza ya están colgados desde el principio (antes, hasta el primer cuadro, quedaban en el piso frente a la puerta). Puerta 39: la banda de las maletas entera en la pantalla. Puerta 60: las cosas del tocón apoyadas encima (la piña estaba medio hundida). Puerta 67: los globos de abajo ya no quedan detrás del mostrador. Puerta 68: el carrusel corrido para no meterse debajo de los botones.
Botón «En pareja» del mapa (o la invitación que llega a la casa): se invita a la puerta que sigue o a una del mapa, y
los dos la resuelven al tiempo, cada uno en su celular (src/puertas/pareja*.ts).
-
Cómo viaja: canal de Supabase Realtime de la pareja (
puertas-<pareja>, broadcast + presencia, la misma sesión de la casa). Quien invita es el anfitrión: aplica las reglas del acertijo; el invitado arma la misma puerta (mismo montaje y el mismo reguero, que le llega del anfitrión porque las pantallas no miden igual) y la ve en espejo. - La invitación se repite cada 4 s hasta que llega la respuesta; si el «¡Vamos!» se pierde en el camino, el invitado lo vuelve a contestar cuando le llega la invitación repetida (antes Él se quedaba esperando).
- Paquetes cada 125 ms (si hay algo que decir) y un latido cada segundo. Los movimientos van numerados y se repiten en cada paquete hasta que el otro confirma (un mensaje perdido no daña nada); lo que solo vale en su última versión (la foto del cuarto, el candado abierto, las texturas pintadas) se repite hasta que el otro dice qué versión tiene.
-
Los dedos del invitado viajan con su cámara y su pantalla, y el anfitrión los aplica como si fueran propios
(
Entrada.remoto): tocar, mantener, arrastrar, frotar, deslizar, dibujar. Lo que arrastra se mueve de una en su celular (no espera la red) y el espejo no se lo quita de la mano. Los sensores del invitado (sacudir, voltear, cerrar los ojos, soplar) también llegan, y su inclinación cuenta cuando el celular del anfitrión está quieto. -
El espejo (
pareja_espejo.ts): el anfitrión manda solo lo que cambia (posición, giro, tamaño y si se ve de cada cosa del acertijo, del desorden y de lo pegado a la puerta; colores de los materiales propios; luces; texturas pintadas, como el vidrio que se limpia; el inventario y la luz del cuarto), y cada segundo y medio todo lo que ha cambiado. El invitado lo aplica suavecito. Los sonidos de los acertijos suenan en los dos (sonido_eco.ts). - Candados y notas: le salen a quien los tocó (el anfitrión los arma sin verse y los botones viajan). Lo mismo los acercamientos de la cámara.
- Compartido: el inventario (lo que uno recoge lo tienen los dos), las pistas (si uno le compra un dulce al narrador, el narrador se la dice a los dos) y las monedas (la casa es una: las paga el anfitrión).
-
Se ve dónde toca el otro: una manito con su carita (
retratos/el.png,ella.png) que se desvanece al ratico. - Señas (botón del globito con corazón): «¡Mira aquí!» (con un aro que late donde uno tocó), «¡Ya sé!», «¿Me ayudas?», «¡Muak!» y escribirle una notica (le sale como un pos-it: sirve para dictar «4 1 7»). Las señas usan cómo se dicen: Él a Ella «esposa», «pulga aventurera», «protagonista»; Ella a Él «panda», «perro lanudo», «liefje» (y «mi amor»).
-
Puertas repartidas (como «We Were Here»): en la 8, 25, 31, 38, 43 y 70 uno ve la pista y el otro tiene el
candado (se turnan de una puerta a otra). Quien no la ve tiene una nubecita rosada encima que dice «Esto lo ve Él»;
si toca la pista o si el que la ve intenta abrir el candado, le sale un aviso amable. Se declara en el nivel con
pareja: { pista: [nombres] }. La puerta 100 dice que cada uno ponga su pulgar en una huella (pareja.aviso). -
Pausa: si uno se va a segundo plano (
segundo_plano.ts) o se corta la conexión (4,5 s sin noticias), al otro le sale la pausa con aviso y todo se queda quieto; al volver sigue donde iba. Si uno sale, al otro le avisan. - Prueba:
node scripts/probar-puertas-linea.mjs http://localhost:5173/puertas.html(dos celulares con pantallas distintas, un Supabase de mentiras con demoras y 8 % de mensajes perdidos: Ella resuelve una puerta con sus dedos, Él otra con su prueba, señas, pausa por segundo plano y por corte, candado que le sale a Ella, y al final de cada parte los dos estados tienen que ser idénticos).
src/puertas/efectos.ts: ondita al tocar (dorada si se tocó algo), la puerta se abre con rayos de luz del color del
capítulo, polvito dorado que sale por la puerta y chispas en la cerradura; el corazoncito del recuerdo sale de la
puerta y se va volando; confeti de corazones y estrellas por los lados (sin tapar la puerta); las estrellas ganadas
arriba; y entre puerta y puerta la tarjeta con el número (y el capítulo cuando cambia) sobre el fundido, mientras se
arma la siguiente, que se destapa con la cámara asentándose. Mientras la puerta se abre, la interfaz se hace a un
lado (semitransparente). Todo con dos nubes de partículas reutilizadas.
- Página propia
puertas.html+src/puertas/: escena 3D en primera persona con el mismo estilo de plastilina (luces suaves,RoomEnvironment), cuartos armados con piezas simples y modelos de la casa y la tienda. -
sensores.tsjunta los sensores con su alternativa; en pruebas se simulan (teclas ywindow.__puertas). - Cada puerta es un módulo con su montaje, su lógica, sus pistas y una prueba que la resuelve con toques y sensores simulados, para verificar que las 100 se pueden pasar.
- Progreso en el celular (
localStorage); las monedas llegan a la casa compartida. - Pruebas:
scripts/revisar-puertas.mjs(arriba) yscripts/probar-puertas-linea.mjs(pareja). Parámetros:?puerta=N,?sinhistoria=1,?rapido=N,?semilla=N,?una=1(al abrirse no sigue),?revisar=1(sin dibujar).window.__puertastienejugar(n),probar(),estado()(conlisto),revision(),revolver(s),quieto(),papelitos(),tapan(),desorden(),lanzar(i, vx, vy, vz),antojo(),pareja(),parejaInvitar(n)ysegundoPlano(si). - El bucle de dibujo usa
cuadros()desrc/segundo_plano.ts(se detiene solo en segundo plano) con tope de 30 cuadros por segundo.
Fuente técnica: documento de referencia. Esta página no certifica la versión de la APK instalada.