O pesadelo imaginado era cadastrar nome, custo, status, texto e comportamento especial de centenas de cartas.
Mas, quando os dados já vêm estruturados e há um motor de batalha reutilizável, tudo muda. A base entra em lote, efeitos comuns reaproveitam regras existentes e só mecânicas realmente novas precisam de código específico.
Neste caso, Beyond Decks já tinha dados, decks, seeds, replay, Battle Sim, IA e benchmark.
Não era refazer o jogo. Era colocar equipamento de pesquisa e um cérebro melhor em um sandbox pronto.
1. Sem animação, uma partida fica absurdamente rápida
O cliente real gasta tempo com draw, arrastar carta, voz, evolução, ataque, dano e pensamento humano.
O simulador faz:
estado A
→ ações legais
→ escolhe
→ atualiza
→ estado B
até alguém perder.
O custo real não é a animação. É quanto futuro a IA precisa calcular.
2. O simulador base era muito mais sério do que parecia
Já possui deterministic seed, replay inspection, target selection, tactical look-ahead, full-turn planning, lethal solver, mecânicas por classe, benchmark, auditoria de cobertura e runtime checks.
O autor também deixa claro: a IA não é um oráculo perfeito de torneio; é intermediária.
Ótimo. Tabuleiro, regras, cartas, replay e motor já existem. A principal oportunidade é melhorar a camada de decisão humana.
3. 12.480 partidas deram Royal perto de 79,8%—amostra grande também amplifica vício de policy
A cobertura de regras estava boa, mas Royal ficou perto de 79,8% e Witch de 25,6%.
Isso não significa “Royal é objetivamente o melhor”.
Se Royal funciona com “baixar seguidor, ganhar board, bater face”, enquanto um deck complexo gasta combo, evolução e mão sem pensar no futuro, a IA favorece estilos simples.
Amostra grande pode medir uma policy errada com enorme precisão.
4. Conhecimento humano entrou como hábito, não como tabela de respostas
Foram estruturados mulligan, cartas para segurar, evolução, espaço de mão/board, alternância ataque-defesa, power turns do rival, condições alternativas, lethal em 2–3 turnos e erros comuns.
Em vez de regras rígidas:
hold_value +20
future_combo_value +30
opponent_counter_cost +25
uso precoce -40
O guia humano direciona a busca.
5. Agora são 4.032 partidas reais—2.016 são condições A/B
56 grupos × 2 direções × 18 seeds = 2.016 condições
Em cada uma, reference e human-prior jogam uma vez. O engine executa 4.032 partidas.
2.016 é o número de questões iguais entregues a duas IAs.
6. Antes do lote grande, pare e valide
Primeiro foi corrigida uma regressão de finisher usado cedo demais. Depois, smoke tests com DB e decks reais.
Também se verificam cobertura, unsupported, rule gaps, hashes, IDs duplicados, referências e versão do corpus.
Depois de aprender que uma IA ruim consegue gerar 12 mil partidas com muita disciplina, a regra ficou: valide a experiência antes de aumentar a amostra.
7. human-prior v1 ainda não é adaptação total
O mesmo Ramp Dragon muda de objetivo:
normal → ramp
morre próximo turno → defender
rival sem recurso → atacar
finisher sem setup → segurar
setup pronto → usar
A IA precisa recalcular o que importa agora em cada turno.
8. Adaptive AI alterna ATTACK / SURVIVE / SETUP / RESOURCE / LETHAL
Vida, board, mão, PP, evolução, pressão do rival, dano esperado e prontidão de combo dão notas aos modos.
Se você está com 6 de vida diante de 14 de dano, SURVIVE precisa vencer RESOURCE.
Adaptar não é “não use esta carta antes do turno 6”. É comparar usar agora contra esperar.
9. Leia 2–3 turnos, mas pode a árvore com conhecimento humano
50 ações legais
→ priors humanos: 20
→ avaliação barata: 10
→ busca 2–3 turnos só nas 10 melhores
+8 agora e morte depois deve perder para +3 agora com sobrevivência e contra-ataque.
10. Ver a mão escondida seria trapaça—use “pode ter”
Crie mundos possíveis com classe, arquétipo, cartas usadas, deck restante, tamanho da mão e ações anteriores.
tem AoE 30%
não tem 70%
Avalie a mesma jogada em vários mundos.
Assim aparece o raciocínio: “pode ter, então respeito um pouco; se eu respeitar tudo, nunca ganho.”
11. A ordem importa—não mude a IA no meio das 4.032 partidas
congelar v1
→ terminar 4.032
→ analisar erros
→ Adaptive v2
→ quick A/B
→ repetir ~2.016 condições
→ full ~12k
→ otimizar 40 cartas
→ diagnóstico
v2 deve nascer dos erros medidos.
12. O objetivo não é decorar o guia, mas saber quebrá-lo quando a posição exige
Conhecimento humano + árvore de jogo + avaliação futura + probabilidade da mão rival + modo dinâmico.
Então:
“Normalmente ramp; se morrer, defende.” “Normalmente segura; se tiver lethal, gasta.” “Normalmente desenvolve; se AoE for provável, reserva.”
O guia orienta. O estado real manda.
13. Isso vale para outros jogos—construa um laboratório de vitória
Pokémon: reutilize simulador e otimize time, seleção, troca e golpe. Card games: deck, mulligan, recurso e matchup.
Refazer o jogo e pesquisar como vencer são trabalhos diferentes.
Se o simulador existe, use.
Não reconstrua o estádio. Construa o laboratório que aprende a ganhar nele.
E se Royal voltar perto de 80%:
“Esse bot tirou 10 de novo em ‘baixar bicho e bater face’?”
