Communitygithub.com

Diseño de Juego — Pour Decisions (Simulación de Arena × Rogueli…

Skill para diseñar o modificar las reglas, materiales (viales), catalizadores, fórmulas de puntuación, curvas de objetivo, economía de la tienda, escalones de dificultad, tutorial de Pour Decisions, o para ejecutar simulaciones de balance y revisar nuevas cartas/reliquias.

¿Qué es Diseño de Juego — Pour Decisions (Simulación de Arena × Rogueli…?

Este skill proporciona a desarrolladores y diseñadores de juegos un marco completo y detallado para el desarrollo de 'Pour Decisions', un juego que combina simulación de arena (falling sand) con mecánicas de roguelike deckbuilder. Basado en los principios de diseño de títulos exitosos como Balatro, Slay the Spire y Noita, el skill establece reglas ejecutables para la simulación determinista, sistemas de puntuación (chips × mult), curvas de dificultad basadas en datos, y un profundo sistema de creación de contenido (viales, catalizadores). Está diseñado para plataformas de desarrollo como Unity, y se apoya en simulaciones Monte Carlo para el balance automático, asegurando que cada elemento (carta o reliquia) tenga un propósito único y que el juego ofrezca profundidad a través de la combinación de un número limitado de reglas. El skill incluye guías para la creación de prototipos, la experiencia de usuario inicial (FTUE), y un checklist exhaustivo para la revisión de nuevo contenido, priorizando la diversión humana sobre los datos fríos, aunque ambos son esenciales.

Compatible con✓Claude Code✓Codex CLI~Cursor
npx skills add https://github.com/Waipjy/ClaudeGame/tree/HEAD/.claude/skills/game-design

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

Game Design — Pour Decisions(落沙模擬 × Roguelike Deckbuilder)

Primero lee docs/design/00_concepts.md、docs/research/02_competitor_patterns.md. Este skill solo proporciona reglas ejecutables; los detalles matemáticos y de simulación están en references/:

  • references/scoring-math.md: fórmulas de chips × mult, apilamiento aditivo/multiplicativo, plantillas de curvas objetivo, números reales de Balatro.
  • references/balance-sim.md: arquitectura de simulación de equilibrio Monte Carlo, niveles de bot, métricas, detección de estrategias dominantes, formato de informes.
  • references/content-archetypes.md: borrador de arquetipos de sinergia, cuotas de rareza, ejemplos de catalizadores.

0. Cinco Principios Rectores (en caso de conflicto, prevalecen estos)

  1. La simulación debe ser completamente determinista: mismo seed, misma posición de vertido → mismo resultado, píxel a píxel. Sin determinismo no hay habilidad, ni simulaciones de equilibrio, ni repeticiones, ni previsualizaciones.
  2. Cada reacción debe ser "visible y contable": la posición donde ocurre la reacción muestra un número, el tipo tiene un color y sonido fijos; el jugador debe poder decir por qué perdió (Roguebook: si los jugadores no entienden cómo perdieron, abandonan).
  3. La profundidad proviene de las combinaciones, no de la cantidad de reglas: pocas reglas superficiales (BotW chemistry engine: los elementos cambian materiales, los elementos cambian elementos, los materiales no cambian materiales), la profundidad surge de la interacción de 100–200 objetos.
  4. Cada objeto tiene un propósito único, no es simplemente fuerte (Slay the Spire GDC 2019): los efectos que son tan fuertes que distorsionan la estrategia y son fáciles de conseguir deben ser limitados; los combos fuertes pero difíciles de conseguir y que requieren búsqueda activa pueden existir—en un juego para un jugador, se permite que el jugador ocasionalmente "se rompa".
  5. Los datos marcan la dirección, las pruebas de juego marcan la sensación: las simulaciones automáticas detectan problemas numéricos, las pruebas humanas determinan si es divertido (Noita: los indicadores técnicos son fáciles de verificar, "si es divertido" solo se puede probar jugando).

1. Ciclo Principal y Estructura de Ronda

Ronda: Robar mano (viales) → Elegir 1 vial + Elegir posición/ángulo de vertido → Simulación hasta que se estabilice (settle) o se alcance el límite de ticks
           → Puntuación de reacciones de este vertido → Acumular para la puntuación de la ronda → Se agotan los vertidos → Comparar con puntuación objetivo
Entre rondas: Tienda (vial / catalizador / mejora / modificación de vaso de precipitados) → Siguiente ronda
Una partida (Run): 8 "experimentos" (Ante) × 3 rondas (pequeño/grande/Boss) = 24 rondas
  • Puntuación por "settle", no por velocidad de reacción en tiempo real—evita las debilidades del equipo de IA (sensación) y hace que los resultados sean predecibles.
  • Límite de settle: límite de ticks de simulación (ej. 600 ticks), en pantalla se reproduce durante 4–6 segundos máximo, se puede acelerar ×2/×4; luego liquidación forzada.
  • El estado del vaso de precipitados se conserva entre vertidos (en la misma ronda); si se vacía al final de la ronda es un parámetro de diseño: conservar = profundidad de planificación a largo plazo, vaciar = legibilidad. Prototipo primero vacía, luego prueba la versión que conserva.
  • Ronda de Boss = una regla reescrita (ej. "El agua se congela" "La gravedad se invierte una vez"), correspondiente al Boss Blind de Balatro; debe anunciarse antes del inicio de la ronda.

2. Diseño de Puntuación (chips × mult)

Fórmula (el orden de visualización = el orden de cálculo, el jugador puede seguir la cuenta):

Puntuación de este vertido = (Σ chips de reacción + chips adicionales) × (mult base + Σ +mult) × Π(×mult)
  • chips: puntuación base de cada reacción (según el tipo de reacción y la cantidad de reacción, la cantidad debe ser logarítmica o segmentada para evitar "cuanto más se vierte, mejor").
  • +mult: proviene del "cambio": el número de tipos de reacción diferentes que aparecen en este vertido, la profundidad de la cadena (reacción que desencadena otra reacción).
  • ×mult: solo proviene de catalizadores raros o condiciones especiales. ×mult es la moneda más fuerte, debe otorgarse con la mayor tacañería.
  • La animación de liquidación se reproduce en orden: las reacciones saltan chips una a una → se acumula el mult → se multiplica ×mult uno a uno (conteo al estilo Balatro), los números grandes se ralentizan y añaden vibración.

Reglas:

  • Adición vs multiplicación: n objetos +mult crecen linealmente; k objetos ×1.5 son 1.5^k. Al principio, predominio de la adición, luego transición a la multiplicación, es un arco de construcción natural—que los comunes den adición, los raros den multiplicación.
  • El valor marginal de la adición disminuye (+4 mult sobre base 20 es +20%, sobre base 100 es solo +4%), esto hace que "cuándo pasar a la multiplicación" sea una decisión del jugador. Bueno, mantenerlo.
  • Puntuación > 1e6 usar abreviaturas de miles, > 1e11 usar notación científica; internamente usar double, para Endless usar espacio logarítmico o BigNumber.
  • Fórmula detallada, ejemplos numéricos: references/scoring-math.md.

3. Curva de Puntuación Objetivo

  • Balatro blindaje blanco (ante 1–8): 300 / 800 / 2,000 / 5,000 / 11,000 / 20,000 / 35,000 / 50,000; pequeño/grande/Boss = ×1 / ×1.5 / ×2. La relación de multiplicación por ante disminuye gradualmente de ×2.7 a ×1.4—porque el poder del jugador crece rápidamente al principio y se ralentiza al final.
  • Método para este juego: no fijar la curva a ojo. Usar la simulación de equilibrio con un "bot competente (greedy)" para ejecutar 1,000+ partidas, tomar la puntuación mediana M(a) de cada ante, el objetivo T(a) = M(a) × k(a), donde k aumenta gradualmente de 0.5 (laxo) al principio a 0.9 (ajustado) al final.
  • Objetivo: en blindaje blanco, bot competente 30–50% de victorias, bot fuerte 80–95%, bot aleatorio < 5%. La primera victoria humana ocurre en las partidas 3–8.
  • Endless: después de ante 9, crecimiento súper exponencial (aproximadamente del orden de x^(x²) de Balatro), para que la construcción eventualmente se rompa, proporcionando un punto de referencia compartido de "hasta qué nivel llegué".

4. Diseño de Materiales (vial) y Catalizadores (catalyst)

  • Los materiales son "cartas": cada vial = un tipo de material + cantidad (número de píxeles) + posible modificación (temperatura, pureza, encantamiento).
  • Los catalizadores son "comodines/reliquias": pasivos, permanentes, reescriben reglas químicas o de puntuación. Límite de espacio (ej. 5) obliga al jugador a tomar decisiones.
  • Clasificación de roles de objetos (cada nuevo objeto debe etiquetar un rol principal):
    • Enabler (iniciador): hace que un arquetipo funcione ("El aceite produce llamas adicionales en el fuego").
    • Payoff (recompensa): da puntos cuando el arquetipo funciona ("Cada reacción de combustión +3 mult").
    • Bridge (puente): conecta dos arquetipos ("El vapor también cuenta como reacción de combustión")—para que la construcción no sea de una sola línea.
    • Economy (economía): dinero, descuentos, espacio adicional en la tienda.
    • Scaling (crecimiento): se vuelve más fuerte con el uso ("Al final de cada ronda, si hay ≥3 tipos de reacción, este catalizador gana +1 mult permanente").
    • Utility/Consistency (estabilidad): manipulación de la mano, redoblar, previsualización, limpieza del vaso de precipitados.
  • build-defining vs filler: los espacios raros se usan principalmente para build-defining (reescriben reglas, hacen que el jugador "cambie de dirección"); los comunes son filler (números, estabilidad) pero cada filler aún debe tener un "cuándo elegirlo" claro.
  • Rareza (punto de partida, luego ajustado por simulación): Común 70% / Poco común 25% / Raro 5% (peso de Balatro); Legendario no aparece en la tienda, solo se obtiene mediante eventos especiales.
  • Potenciar los enablers, no potenciar el motor ya construido (Luck be a Landlord 1.1): los arquetipos débiles primero deben complementarse con "piezas de entrada", para que el jugador se atreva a invertir al principio; y proporcionar "puertas de escape": objetos que permitan redirigir cuando el arquetipo falla.
  • No forzar la entrega de buffs al inicio, ya que provoca visión de túnel.
  • Tabla de cuotas de arquetipos y rarezas: references/content-archetypes.md.

5. Economía de la Tienda y Reroll

Valores de partida (base de Balatro, luego ajustados por simulación):

  • Ingresos por ronda: fijo $3–5 por pasar + cantidad de vertidos restantes × $1 + intereses (por cada $5 en posesión se da $1, límite $5, no verificado como valor exacto de Balatro). El interés crea la tensión "ahorrar vs gastar", mantener.
  • Banda de precios: Común $2–5, Poco común $5–8, Raro $8–10; precio de venta = precio de compra ÷ 2 redondeado hacia abajo, mínimo $1.
  • Reroll: precio inicial $5, cada vez +$1, se reinicia al entrar en una nueva tienda. (Regla de Balatro)
  • Espacios en la tienda: 2 objetos + 1–2 paquetes de "materiales" (elegir 1 de 3) + 1 mejora (tipo voucher, $10, regla permanente).
  • Verificación de salud económica (salida de simulación):
    • El bot competente puede comprar de media 1–2 objetos por tienda; 3 tiendas consecutivas sin poder comprar nada = economía demasiado ajustada.
    • La contribución a la tasa de victorias de los objetos económicos no debe ser superior a la de los objetos de recompensa; de lo contrario, "conseguir dinero primero" se convierte en la única solución.
    • Distribución del número de rerolls: mediana 1–2 veces; si la mejor estrategia del bot es reroll ≥5 veces por tienda, significa que el reroll es demasiado barato o los espacios son demasiado malos.

6. Duración de la Partida y Ritmo (Objetivo 30–60 minutos)

  • Presupuesto: 24 rondas × (3–4 vertidos × 15–25 segundos + tienda 30–60 segundos) ≈ 35–50 minutos. Después de medir, ajustar el número de vertidos, no la velocidad de settle.
  • Cada 3 rondas (un ante) debe haber "algo nuevo": regla de Boss, desbloqueo de nueva rareza en la tienda, aparición de nuevos materiales.
  • Las primeras 3 rondas deben completarse en menos de 6 minutos: la ventana para que un novato juzgue "si es divertido" es muy corta (el tiempo de juego medio de la demo de Peglin de 67 minutos puede ser un valor de referencia para la demo en su conjunto).
  • Perder temprano: las partidas perdidas deben terminar en ante 2–4, no en ante 7, para evitar "jugar 40 minutos para saber que la construcción no funciona".

7. Escalones de Dificultad (Stakes / Ascension)

  • 8–10 escalones, sistema acumulativo, cada escalón añade solo una regla (Slay the Spire Ascension 20, Balatro 8 Stakes son acumulativos).
  • Candidatos para este juego (de fácil a difícil): Objetivo ×1.2 → Vertidos restantes no dan dinero → La tienda tiene un espacio menos → El vaso de precipitados comienza con píxeles contaminados → Cantidad de material -10% → Probabilidad de catalizador raro reducida a la mitad → Dos reglas de Boss → La curva de crecimiento del objetivo se cambia al nivel Purple.
  • El escalón de dificultad también es una herramienta de datos: las tasas de victoria en diferentes niveles proporcionan información de equilibrio más detallada (Slay the Spire GDC).
  • Desbloquear cada escalón con la condición de "haber ganado una vez en el escalón anterior"; se muestra en el menú, dando al jugador un objetivo a largo plazo.

8. Meta-progression (no pay-to-win)

  • El progreso permanente se centra principalmente en desbloqueos horizontales: nuevos materiales, nuevos catalizadores, nuevas formas de vaso de precipitados, nuevos mazos iniciales, enciclopedia. No dar bonificaciones numéricas permanentes (ej. "todo el fuego +5%").
  • El orden de desbloqueo está diseñado como tutorial: primero solo se abren 2–3 arquetipos, después de unas cuantas partidas se abren los más complejos (Roguebook: usa el progreso para retrasar los mecanismos complejos).
  • Cada partida (incluso si se pierde) debería desbloquear o avanzar algo (Ball x Pit "respeta el tiempo del jugador": casi cada partida tiene un nuevo plano).
  • Proporcionar una opción de "todo desbloqueado" para jugadores veteranos/streamers (Balatro también la añadió), a costa de que esa partida guardada no cuente para los logros.
  • Cualquier DLC de pago solo puede ser contenido (nuevos paquetes de materiales), no poder.

9. Hacer que la Simulación Caótica Parezca Habilidad

  1. Determinismo: paso de tiempo fijo, números enteros o de punto fijo, orden de actualización fijo (de abajo arriba; la dirección de escaneo izquierda-derecha se determina por la paridad del tick, sin usar RNG); todo el azar se obtiene del PRNG derivado del run seed. Ejecutar dos veces la misma entrada y comparar el hash, incluirlo en las pruebas de CI.
  2. Previsualización: antes de verter, mostrar la trayectoria del punto de impacto e iconos de "con qué materiales chocará"; debido al determinismo, se puede simular en segundo plano una copia de los primeros N ticks para obtener "iconos de reacción prevista". La previsualización completa de la puntuación se reserva para catalizadores/objetos ("espejo de tubo de ensayo") como recurso, no se da gratis.
  3. Vocabulario de reacciones fijo y reducido: cada tipo de reacción tiene un color + icono + tono; las reacciones del mismo tipo se agregan en un único número emergente ("Combustión ×37 → +185"), no saltar números por píxel.
  4. Línea de causalidad: las reacciones en cadena se conectan con líneas finas o destellos que indican "quién desencadena a quién", la profundidad de la cadena se muestra con números grandes (×2, ×3…), también es un punto culminante para los videos.
  5. Control de variabilidad: las diferencias en la posición de vertido deben afectar significativamente la puntuación, pero los resultados en la misma posición deben ser estables. Medir la "brecha de habilidad" = puntuación del bot en la mejor posición ÷ puntuación del bot en posición aleatoria, objetivo ≥ 2; < 1.3 significa que la colocación no tiene sentido.
  6. Simular solo lo que el jugador verá: Noita descubrió que efectos sutiles como el crecimiento de musgo o la fusión lenta pasan desapercibidos; los recursos se invierten en reacciones que cambian la puntuación o la imagen.
  7. Cuando la simulación interfiere con la jugabilidad, la jugabilidad tiene prioridad (Noita): se puede hacer trampa (ej. las reacciones solo cuentan dentro de los X ticks posteriores al vertido, límite de número de partículas).

10. FTUE / Tutorial (Juego de Sistemas)

  • La primera partida usa un seed fijo y una mano fija: 1er vertido = arena (aprender a verter), 2do vertido = agua (aprender reacción: arena+agua → barro), 3er vertido = fuego con aceite (aprender cadena y mult). Cada vertido enseña solo una cosa.
  • Enseñar con el vaso de precipitados, no con texto: menos texto también reduce los costos de traducción a 10+ idiomas y la carga de exposición de texto de IA.
  • "Enciclopedia de reacciones" (codex): la primera vez que ocurre una reacción, se registra automáticamente y se resalta brevemente; el jugador descubre por sí mismo = diversión (Roguebook: descubrir sinergias es la diversión central).
  • Cada tooltip de vial/catalizador tiene una fila de iconos de "reaccionará con X", sin depender de texto.
  • Los catalizadores y la tienda solo se abren a partir de la 2da ronda; el Boss se abre al final del ante 1.
  • La primera partida se puede ganar, pero el progreso no depende de ganar la primera partida.

11. Métodos de Prueba de Juego e Indicadores

  • Método: prueba a ciegas (sin explicación) → primeros 15 minutos pensar en voz alta → luego observación silenciosa → después de terminar, hacer 3 preguntas: "¿Cómo perdiste?" "¿Cuál fue el momento más emocionante?" "¿Qué no entendiste?". Grabar video.
  • Para pruebas de juego HSU: cada vez solo verificar 1–2 hipótesis, escritas previamente en docs/design/playtests/YYYY-MM-DD.md.
  • Indicadores obligatorios (telemetría escrita en JSON local, habilitada en la versión de prueba):
    • Tiempo de la primera reacción, tiempo para entender ×mult (ver si buscan activamente la multiplicación)
    • Distribución de ante de muerte por partida, duración de la partida, duración de cada ronda
    • Proporción de jugadores que inician voluntariamente una segunda partida (el indicador individual más importante)
    • Tasa de respuesta correcta a "¿Por qué perdiste?" (indicador de legibilidad, objetivo ≥ 70%)
    • Número de veces que se ve el tooltip de un objeto vs número de veces que se compra (no entender vs no querer)
  • Formato de eventos: run_start / pour{vial,x,angle,reactions[],score} / shop{offered[],bought[],rerolls} / run_end{ante,cause,build[]}.
  • Cuidado con el sesgo del "super probador": los datos de las personas más experimentadas no representan al jugador medio (Slay the Spire GDC).

12. Simulación de Equilibrio (Resumen; detalles en references/balance-sim.md)

  • La simulación de equilibrio se ejecuta en sim/ (Python o C# headless con el mismo conjunto de reglas), los datos de reglas (materiales, reacciones, catalizadores) usan el mismo JSON/CSV, compartido entre Unity y la simulación, para evitar la deriva entre ambos.
  • Niveles de Bot: Aleatorio / Greedy (cada paso elige la opción con la puntuación esperada más alta) / Lookahead (MCTS o beam search para elegir vertido+compra).
  • Cada cambio de valor ejecuta al menos 1,000 partidas × cada bot; el informe se guarda en docs/design/balance/YYYY-MM-DD_<tema>.md.
  • Alertas de estrategia dominante:
    • Un solo objeto tiene "tasa de victoria cuando se toma − tasa de victoria base" > +10 puntos porcentuales.
    • Un solo arquetipo representa > 40% de las victorias (objetivo: los 5 principales arquetipos entre 10–30%).
    • Un objeto tiene una tasa de selección < 3% en el bot greedy → carta muerta.
    • El bot fuerte tiene una tasa de victoria en blindaje blanco > 98% → en general demasiado fácil.
  • Las estrategias extrañas encontradas por la simulación son una señal; primero verificar si es un bug (investigación de Google: el comportamiento extraño del agente a menudo revela errores reales en la sintonización de parámetros).
  • Al corregir, priorizar ajustar números (costo, rareza, valor de bonificación), luego cambiar condiciones, y por último rediseñar (LocalThunk: la mayoría de las correcciones son numéricas).

13. Lista de Verificación para Revisar Nuevos vials / Catalizadores

Antes de enviar cualquier objeto nuevo, marcar cada elemento y anotarlo en la tabla de datos del objeto:

  • Se puede decir en una frase para qué sirve y "cuándo elegirlo".
  • Se ha etiquetado el rol principal (Enabler/Payoff/Bridge/Economy/Scaling/Utility) y el arquetipo al que pertenece.
  • El efecto se puede expresar en ≤ 15 palabras en inglés o en 1 línea de iconos; no requiere una nueva palabra clave, o la nueva palabra clave será compartida por ≥ 3 objetos.
  • El efecto es "visible": cuando se activa, hay retroalimentación visual en la pantalla (palabra emergente/destello/sonido).
  • Determinista: no introduce aleatoriedad no seed; no depende de la tasa de fotogramas.
  • Nivel de puntuación correcto: los comunes no dan ×mult; los que dan ×mult son raros+ o tienen condiciones difíciles de cumplir.
  • Se ha ejecutado la simulación con los 3 objetos más fuertes existentes y no ha aparecido un pico de puntuación > 10× (o el pico es intencional y difícil de conseguir).
  • No hace que ningún objeto existente se vuelva inútil (cannibalize)—verificar el cambio en la tasa de selección de otros objetos del mismo arquetipo antes y después.
  • Hay una salida en caso de debilidad: si se toma pero el arquetipo no funciona, al menos puede servir como filler o venderse.
  • El precio y la rareza son coherentes con otros objetos del mismo rol.
  • El texto ya está en la tabla de localización (key), y la longitud tras una expansión del +35% en alemán/ruso aún cabe.
  • Rendimiento: en el peor caso de cantidad de píxeles al activarse, se mantiene el FPS objetivo.
  • Se han ejecutado 1,000 partidas de simulación: tasa de selección 5–40%, diferencia de tasa de victoria dentro de ±10pp (a menos que sea un raro build-defining intencionado).

Sources

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

Skills relacionados