Privacidad y datos
Esta página se GENERA del código: el catálogo de eventos y los permisos salen de los ficheros que los implementan, no de lo que nadie recuerde. Si mañana se añade un evento, la cifra de aquí abajo cambia sola.
Tu copia del juego no sale de tu dispositivo. La extracción ocurre entera en tu navegador: los ficheros se leen de tu disco y se quedan en la caché local del navegador. No hay servidor que los reciba.
Qué sale y qué no
| Sale | Con qué permiso | |
|---|---|---|
| Tus ficheros de Ultima V | No | — · nunca se envían |
| El sonido del juego | No | — · nunca se envía |
| Tus partidas guardadas | No se suben | — · viven en tu navegador |
| Analítica de visitas y grabación de tu sesión — incluido lo que escribes y la pantalla del juego | Sí, por defecto | casilla analítica, activada por defecto; la desactivas cuando quieras |
| La lista de teclas que pulsaste | Sólo si lo activas | casilla partida, apagada por defecto |
Los 2 permisos son independientes. Grabamos la sesión por defecto: la analítica y la grabación empiezan en cuanto entras, en todas las páginas del sitio, sin esperar a que contestes el aviso. Puedes desactivarlo en cualquier momento, y entonces paramos y borramos tus identificadores. «Guardar mi partida» es aparte y sigue apagado hasta que lo actives tú.
🔴 La fila de la grabación y la de las partidas hay que leerlas juntas. Tus ficheros de partida no se suben nunca; pero la grabación de sesión sí se lleva la pantalla del juego tal como la dibuja tu navegador y lo que escribes, y si activas el segundo permiso sale además la lista de teclas que pulsaste, con la que se puede reconstruir la partida. Decir sólo «tus partidas no salen» sería cierto de la letra y engañoso del fondo.
La analítica y la grabación de sesión: qué se envía, y a quién
Se envía a PostHog, en https://eu.i.posthog.com — un servicio de terceros, no un servidor nuestro. Eso es lo que se puede comprobar desde fuera, y es lo que decimos: el destino. Lo que ese tercero haga después no lo hemos medido y no lo vamos a afirmar.
Lo que se le manda es esto, salvo que lo rechaces:
- La grabación de tu sesión: el manejo de la web, lo que escribes (sin tapar) y la pantalla del juego tal como tu navegador la dibuja con tus ficheros. Es el único canal por el que salen imágenes; va al espacio privado del proyecto y no se publica.
- Lo que el servicio recoge por su cuenta: las páginas que abres y cuándo sales, los clics y cambios de campo, y los errores de programa que no se controlan.
- 21 eventos propios: nombres de paso —dónde entra y dónde se pierde la gente—. La lista sale del catálogo del código, que es el único sitio donde se declaran.
Sin nombre, sin cuenta y sin perfil de persona.
Los 21 eventos, uno a uno
portada_vistabyo_vistoconsentimiento_dadobyo_carpeta_elegidabyo_fuente_invalidabyo_extraccion_iniciadabyo_extraccion_okbyo_extraccion_fallobyo_jugarbyo_primera_partidabyo_momento_anadidobyo_partida_jugadajuego_arrancadocharacter_createdjourney_resumedgame_savedmanual_save_createdsave_loadedsave_deletedsave_importedsave_exported
Qué mira esta página, y qué no puede ver
Para no venderte más certeza de la que hay, esto es el alcance exacto de lo que se deriva:
- Sí ve el catálogo de eventos, las casillas del panel, el destinatario y si el punto de entrada de estas páginas llama o no a la analítica. Las cuatro cosas se leen del código en cada construcción del sitio.
- No deriva la lista de lo que el servicio recoge por su cuenta ni la de la grabación: está escrita a partir de la configuración de
game/src/web/sdk-posthog.ts, que es donde puedes comprobarla. - No ve lo que pudiera enviar código de terceros, ni lo que tu propio navegador o tus extensiones hagan por su cuenta.
- 🔴 Y un límite propio: el reenvío interno del panel de partidas acepta el nombre del evento como texto libre; lo que mantiene la lista de arriba completa es una comprobación que corre en cada construcción y deja el sitio en rojo si aparece un evento fuera del catálogo.
Cómo cambiar de opinión
Ahí arriba está el panel de verdad, el mismo que sale la primera vez: cada permiso por separado y guardar, o «Rechazar todo» con un clic. Rechazar no rompe nada del sitio ni del juego. Si rechazas con la página abierta, la grabación se para en ese momento —también en las otras pestañas del sitio— y se borran los identificadores que el servicio guarda en tu navegador; lo que ya se hubiera enviado hasta ese instante no se borra desde aquí. Si no ves el panel, tienes JavaScript desactivado — entonces tampoco se envía nada, porque lo que envía es JavaScript.
Desde cualquier otra página del sitio se llega al mismo panel con el enlace «Mis permisos» del pie.
Tu elección se guarda en tu propio navegador (openu5-consentimiento), no en un servidor. Borrar los datos del sitio la borra, y todo vuelve al estado por defecto: la analítica y la grabación activadas, «Guardar mi partida» apagado. Si habías rechazado, tendrás que volver a rechazar. Y si tu navegador no deja guardar la elección (el modo privado de algunos navegadores), el rechazo vale sólo en la página donde lo pulsaste.
La tabla de récords: lo único que pasa por un servidor nuestro
Todo lo de arriba ocurre en tu navegador o va a un tercero. Hay una excepción, y es ésta: si activas el permiso partida y pulsas «subir» en una repetición, esa repetición va a un servidor nuestro (las funciones de este mismo sitio, en Cloudflare), y ahí se guardan dos cosas tuyas:
- El alias que escribas (hasta 24 caracteres; letras, números, espacio y
-_.), junto a la lista de teclas, el número de turnos y la versión del motor. Es público: sale en la tabla y en la página de cada repetición. Se guarda en dos almacenes (RECORDS_KV, el registro completo, yRECORDS_DB, el índice que ordena la tabla) y no tiene fecha de caducidad ni botón de borrado: si quieres retirar una subida, pídelo abriendo una incidencia en el repositorio con el id de la repetición, y la borramos a mano. - Un resumen de tu dirección IP, no la dirección: para limitar a 10 subidas por hora, el servidor calcula
SHA-256(sal + IP)con una sal secreta del despliegue y usa las primeras 32 letras como clave de un contador que se borra solo a las dos horas (RECORDS_KV, con caducidad). La IP no se escribe en ningún sitio, el contador no va unido a ningún récord ni alias, y sin la sal configurada el servidor no calcula nada.
Nada de esto ocurre sin el permiso partida: sin él no existe el botón de subir. El código del servidor es demo-byo/src/records-servidor.ts y los dos almacenes son los dos únicos que declara.
Borrarlo todo, y qué se va exactamente
Tu copia extraída y tus partidas viven en el almacenamiento de este sitio, en tu navegador. Se van con el botón «Borrar mis ficheros de este navegador» de la página de carga, o borrando los datos del sitio desde el propio navegador.
Ese botón pregunta antes cuando hay algo que no se puede recuperar, y enseña el inventario exacto de lo que se va: tu copia extraída, tus partidas guardadas, tus repeticiones y los ajustes de este navegador —idioma, permisos, piel y sonido—, con el consentimiento nombrado entre ellos. Los recursos extraídos se regeneran soltando la carpeta otra vez; una partida de cuarenta horas no. Sin partidas ni repeticiones no pregunta nada, porque no hay nada que perder.
Las páginas de /mejoras, /diferencias y ésta no emiten ninguno de los eventos propios del catálogo: su punto de entrada (consentimiento-doc.js) no llama a la analítica, y eso se puede comprobar en el fichero publicado. Pero sí se graban, como el resto del sitio: el servicio registra la visita, los clics y la grabación de la sesión, salvo que lo hayas rechazado.
Compruébalo
El motor está publicado bajo GPL-3.0-or-later en github.com/kokoima/openu5. El catálogo de eventos es game/src/web/eventos.ts y el panel game/src/web/panel-consentimiento.ts: ahí está todo lo que esta página resume.