1. Solo queríamos pegar a la cara; apareció un laboratorio
La idea inicial era sencilla: reunir mazos públicos, fijar reglas y entorno, dejar que las CPU jugaran decenas de miles de partidas y leer el ranking. Pero apareció la primera verdad incómoda: ejecutar correctamente las reglas no equivale a jugar bien.
Set 8 quedó fijado con 826 cartas, commit del motor, hash del entorno, mazos legales y seeds. El baseline histórico de 12.480 partidas tenía 100% de cobertura, 0 cartas unsupported y 0 rule gaps conocidos. Aun así, la IA cruda daba aproximadamente Sword 79,8%, Forest 63,7%, Dragon 60,9% y Rune 25,6%.
Repetir diez mil veces no convierte un error en verdad. Solo puede convertirlo en un error muy estable.
2. Los consejos humanos hicieron a la IA más débil
human-prior-v1 incorporó ideas normales: reservar recursos, respetar setup y condiciones de victoria, y no malgastar evoluciones. El A/B exacto usó 2.016 unidades emparejadas y 4.032 partidas. Baseline: 50,99%; human-prior-v1: 49,36%; delta -1,64 puntos.
La IA escuchó a humanos y empeoró.
El problema es que el consejo humano es condicional. “Guarda esta carta” deja de ser correcto si mueres ahora. Convertir contexto en pesos fijos conserva la frase y destruye la lógica.
3. Adaptive v2 mejoró la media y rompió Witch
Adaptive v2 alternaba entre LETHAL, SURVIVE, STABILIZE, SETUP, RESOURCE y PRESSURE, añadiendo búsqueda corta y valor futuro. El total mejoró +0,74 puntos frente a v1, pero Runecraft cayó -6,25 y cruzó el floor preregistrado de -5. REJECT.
T11 acabó +0,30 frente a v1, pero -2,38 frente a reference-v5 y -16,67 en Abysscraft. Otro REJECT.
La media aprobaba; una asignatura estaba ardiendo.
4. El análisis causal arrestó primero a los investigadores
Se encontró un defecto real: max_nodes=160 no estaba conectado al planner y 9.067 decisiones superaban el límite nominal. Corregirlo no reparó el rendimiento amplio.
Luego apareció un error de atribución: una intervención “loss→win” se había normalizado desde el jugador fijo del schedule. Para el actor cuya acción cambió, era win→loss. El análisis había detenido a la víctima.
Se corrigieron actor, direction e invariantes. La plataforma quedó mejor; la causa de rendimiento siguió sin resolver.
5. Tras 31.406 partidas, “no sabemos todavía” pasó a ser una conclusión válida
La investigación de política de Set 8 cerró con 20 experimentos y 31.406 actual engine games confirmadas. De 439 unidades discordantes, 0 tuvieron causa de rendimiento completamente explicada, 11 parcialmente y 428 quedaron sin resolver.
El proyecto deliberadamente se detuvo en PAUSED_COMPLETE_NO_PROMOTION. human-prior-v1 siguió activo. El holdout final previsto de 8.064 partidas quedó intacto.
El éxito no fue una IA sobrehumana, sino un sistema que evita promocionar una IA simplemente porque una gráfica conveniente parece bonita.
6. Después hicimos luchar 52 mazos durante 46.900 partidas
El corpus de mercado reunió 52 mazos, 25 arquetipos y 7 líderes. Quick, broad, optimización local de 1–3 cartas, unseen-seed ranking y trazas elevaron el ledger a 46.900 partidas reales del motor.
Las siete recomendaciones finales jugaron un round robin directo: 21 pares no ordenados, 1.512 partidas, 72 por celda no diagonal, mitad reference-v5 y mitad human-prior-v1, mitad primer y segundo jugador. Coverage 100%, sin unsupported, rule gap ni fuga de información oculta.
7. Nació el “ranking de descerebrados contra descerebrados”
| Puesto | Mazo | Media 7×7 | Peor cruce |
|---|---|---|---|
| 1 | Buff Forest | 71,99% | Abyss 59,72% |
| 2 | Rally Sword | 65,97% | Forest 31,94% |
| 3 | Midrange Abyss | 54,17% | 40,3% |
| 4 | Artifact Portal | 54,17% | 36,1% |
| 5 | Ramp Dragon | 53,70% | Forest 25,0% |
| 6 | Evolution Haven | 31,71% | Dragon 12,5% |
| 7 | Calgidensula Witch | 18,29% | Forest 1,4% |
Los mazos donde “hacer algo fuerte ahora” suele seguir siendo bueno más tarde son fáciles para esta IA. Los que compran poder futuro sacrificando tempo presente parecen mucho más difíciles.
8. En torneos humanos, Witch vive en otro universo
Dexel Rising Cup #2, 8 de agosto de 2026: 64 equipos, 192 jugadores, 384 mazos. Hand Witch apareció 116 veces, ~30,2% del campo; AF/Storm Portal 52, Evolution Haven 34, Rally/Evolution Sword 29, Ramp Dragon 25.
En humanos, Witch era metajuego superior. En el 7×7 de IA, Calgidensula Witch terminó última con 18,29%. No debemos asumir listas idénticas de 40 cartas, pero la discrepancia entre humanos y la política actual es enorme.
Rally Sword, en cambio, fue fuerte en ambos mundos. Heurística burda pero útil: fuerte con IA simple + fuerte con humanos expertos puede significar tolerancia a decisiones imperfectas.
9. Auditoría de Future Optionality
Se auditaron 24 mecánicas de los siete líderes en RULE, STATE, VISIBILITY, IMMEDIATE VALUE, FUTURE VALUE, SEQUENCE, SEARCH y PLAN.
De 27.810 decisiones y 118.575 candidatos root, solo 8.878 —7,49%— tenían una señal futura explícita. Rule/state/immediate eran SUPPORTED 24/24. Sequence estaba MISSING en 23/24 y plan en 20/24.
La IA conoce las reglas y entiende bastante bien “valor ahora”; casi no representa orden ni planes largos.
10. Witch: saber que existe Spellboost no es entenderlo
Spellboost tenía rule/state, pero visibility/future value eran PARTIAL y sequence/plan MISSING. DRAW → SPELL y SPELL → DRAW no son equivalentes: una carta robada antes puede recibir el boost; una robada después no recibe retroactivamente un boost ya ocurrido.
En 12 fixtures sintéticos: DRAW_FIRST_BETTER 4, SPELL_FIRST_BETTER 0, EQUIVALENT 8. En 50 estados reales representativos, el resumen fue STATE_DEPENDENT. La solución no es “roba siempre primero”, sino replanificar tras observar.
11. Dragon: +1 PP máximo compra derechos de acción futuros
Ramp puede perder tempo ahora, pero desbloquea cartas caras, turnos multi-carta, curación, eliminación y finishers. El salto 6→7 cruza Awakening.
La auditoría encontró 12 MYOPIC_REVERSAL de Dragoncraft: 6 ramp y 6 Awakening. La evaluación inmediata prefería control, mientras el diagnóstico t+2 podía invertir el orden. Eso no autoriza un bonus fijo a ramp.
12. Las otras clases tenían variantes del mismo problema
Forest: combo thresholds, generación barata y bounce order. Sword: Rally 9→10 y multi-summon. Abyss: Shadows, composición del reanimate pool y HP como recurso. Haven: Countdown y Act, donde conservar la opción tiene valor. Portal: tokens de coste cero y copy multiplican el espacio de secuencias.
EP, SEP, Extra PP y límites de mano/tablero/leader area también intercambian valor inmediato por libertad futura.
13. Construimos un planner closed-loop de tres turnos reales
El contrato exigía avanzar el motor al menos tres turnos futuros, no tres acciones. Además no fijaba un guion completo: ejecutaba una acción, observaba robo/generación/azar y recalculaba tres turnos desde el nuevo estado. Es una estructura cercana a Receding Horizon / MPC.
No se miró el orden futuro del mazo propio ni la mano real rival; se usó belief sampling. FutureRelevantState conservó Spellboost, Extra PP, Countdown, Act, Rally, Shadows y destroyed-follower pool. Sin bonus fijo de optionality, Witch o ramp.
14. La implementación funcionó. El rendimiento se hundió.
Ablation: 56 actual engine games. Se evaluaron 3.979 / 3.979 root actions, completion de tres turnos 100%, hidden-info violation 0. Hubo 81.621 replans tras observación y 35.821 cambios de plan.
Pero base/widen quedaron -37,5pt frente a human-prior-v1, y replan/state/robust -25,0pt. Todos cruzaron el floor -10. Resultado correcto: REJECT_ACTIVE_UNCHANGED. No se ejecutaron targeted, broad, market 7×7 ni final holdout.
Habíamos construido una IA que veía más lejos y se equivocaba con más confianza.
15. Esto no demuestra que tres turnos basten
Lo descartado es “la implementación no llega realmente a tres turnos”. No se ha demostrado que tres turnos sean estratégicamente suficientes. El paso de -37,5 a -25,0 con replan es solo una señal direccional: ocho condiciones por candidato son pocas.
Al reevaluar los 12 antiguos reversals de Dragon con búsqueda real de tres turnos, solo 1/12 cambió realmente hacia ramp. El proxy antiguo no era ground truth.
Los sospechosos principales pasan a ser el terminal/leaf evaluator y el modelo de respuesta rival.
16. Siguiente pregunta: “Dices que este futuro vale -150. ¿Cuántas de 100 partidas gana desde aquí?”
La siguiente ronda no debe tocar pesos todavía. Hay que congelar hojas de tres turnos y descomponer cada término del evaluator: feature raw, normalización, peso, contribución y score final, especialmente para valores extremos como -150.
Después se reinicia desde la misma hoja 32–128 veces hasta terminal para estimar win rate empírico. Como el score raw no es probabilidad, se calibra score→probability y se mide Brier, log loss y reliability. La calidad de ranking se mide aparte con Spearman, Kendall, same-root argmax accuracy, pairwise concordance y decision regret.
El rival se cruza con human-prior-v1, reference-v5 y una stress response basada en búsqueda. Así se separa score malo, respuesta rival irreal, escala/peso erróneo, representación de estado insuficiente o horizonte todavía corto.
17. Conclusión: vemos el futuro, pero la rúbrica de corrección es sospechosa
La IA ya pasó de “qué es fuerte ahora” a “puedo simular tres turnos”, pero todavía no podemos confiar en cómo califica el futuro que ve.
El viaje pasó por Sword 79,8%, consejos humanos contraproducentes, Witch roto, un bug de actor, 46.900 partidas de mercado, Future Optionality y por fin visión real de tres turnos.
Y se volvió más débil.
Solo queríamos pegar a la cara. La siguiente asignatura es Brier score y calibración de hojas. Shadowverse se convirtió en posgrado sin pedir permiso.
Apéndice de datos
- Card DB Set 8: 826
- Baseline: 12.480 games
- Policy research: 31.406 actual engine games
- Estado:
PAUSED_COMPLETE_NO_PROMOTION - Active:
human-prior-v1 - Mercado: 52 decks / 25 archetypes / 7 leaders
- Market analysis: 46.900 actual engine games
- Direct 7×7: 1.512 games
- Optionality audit: 27.810 decisions / 118.575 candidates / 7,49%
- Sequence MISSING 23/24; Plan MISSING 20/24
- Dragon reversals: 12 = ramp 6 + Awakening 6
- RH3 Ablation: 56 games
- Root coverage: 3.979/3.979; horizon 100%
- Replans 81.621; plan changes 35.821
- Resultado:
REJECT_ACTIVE_UNCHANGED - Final holdout:
NOT_RUN
Referencias
- Deck Portal oficial de Shadowverse: Worlds Beyond
- Dexel Rising Cup #2
- Silver & Veness (2010), POMCP
- Cowling, Powley & Whitehouse (2012), ISMCTS
- Literatura de Model Predictive Control / Receding Horizon
- Literatura de Brier score, reliability y validación agrupada


