Saltar al contenido
El Play

Juego web y de teléfono · políticas sociales

Versión privada

The Veil · El Velo

Un juego en español primero: decides seis políticas sociales sin saber quién vas a ser y después vives quince vidas al azar bajo esas reglas.

El Velo, pantalla de reglas: los medidores de Piso y Producción encima de las primeras cuatro leyes.
Rol
Solo: diseño y código
Tiempo
Desde jun 2026
Stack
TypeScript, React, Zustand, Capacitor, Vitest

Versión privada. El código es privado. Te lo enseño en una llamada. Estado verificado el 15 oct de 2026.

En números

55

pruebas en 6 archivos, incluidas las que prueban la premisa del juego

15

vidas por partida bajo las reglas que decides

48

lotes con semillas pareadas detrás de cada vista previa de políticas

La idea

El Velo te pide que decidas las reglas de una sociedad antes de saber quién vas a ser en ella. Escoges seis políticas sociales, después vives quince vidas asignadas al azar bajo esas reglas, y la puntuación depende de cómo salen esas vidas, incluida la peor.

Lo que construí

La simulación es TypeScript puro sin imports de la interfaz ni de la capa de estado, así corre sin interfaz en Node para un arnés de ajuste. El arnés explora las seis políticas con lotes Monte Carlo y verifica que las reglas balanceadas sacan más puntos que la igualdad pura y que el laissez-faire puro, y que las mejores reglas quedan entre los dos extremos. Eso valida este modelo, no una idea general sobre sociedades reales.

Hay dos formas de puntuar: Velo usa el promedio menos una penalidad por la distancia a la peor vida, y Velo de Hierro solo cuenta la peor vida. React y Zustand mueven una interfaz hecha primero en español, y la tarjeta de la Constitución para compartir se dibuja como SVG con las fuentes de la app incluidas y después se convierte en PNG.

Lo difícil

  1. 01 Probar la premisa en código

    El juego plantea que las reglas balanceadas les ganan a los dos extremos. Las pruebas unitarias verifican eso mismo en las dos formas de puntuar, y verifican que la peor vida sale mejor con un nivel medio de redistribución, no en ninguno de los extremos.

    Dónde está en el código: src/engine/model.test.ts

  2. 02 Una vista previa que no se contradice

    Mientras mueves un control, la pantalla muestra cómo cada política cambia la peor vida. La vista previa corre 48 lotes con las mismas semillas en los dos lados, así los nacimientos se cancelan y solo cambian las leyes, y una sola muestra alimenta los dos medidores y las seis políticas.

    Dónde está en el código: src/engine/preview.ts

  3. 03 Un reto diario que no toca los nacimientos

    El reto diario usa tu fecha local como semilla y agrega una recesión o una pandemia. Ese modificador sale de su propio stream de azar, así no cambia quién nace.

    Dónde está en el código: src/engine/daily.ts

Antes y después

AntesDespuésFuente
Costo de la vista previa por tick13.5 ms8 msDicho en el commit 7425eda, después de guardar en caché las cohortes de ciudadanos; no lo volví a medir.

Lo próximo

Escoger un dominio y publicar la versión web.

El banner de El Velo: el título y la frase “Escribe las reglas de una sociedad sin saber quién serás en ella.”

Relacionados por idea