Pular para o conteúdo
Criação de jogos

Como verificamos os 2.000 tabuleiros de blocos deslizantes

O OutBrick verifica tabuleiros com as regras reais, busca uma rota e a reproduz desde o início. Veja o que essa checagem prova — e o que não prova.

  • 6 min de leitura
  • Publicado em
Um tabuleiro de blocos deslizantes no celular ao lado de uma lista de verificação e peças coloridas
Ilustração do blog

Um solucionador só é confiável se obedecer às mesmas regras do jogo. No OutBrick, isso significa considerar peças que deslizam até uma parede, outra peça ou uma porta da cor errada, além de chaves, gelo, geradores e esteiras. Encontrar uma rota não basta: reproduzimos cada movimento desde o tabuleiro original para verificar se a sequência realmente funciona. Esse processo conferiu os 2.000 tabuleiros publicados, mas provar que existe uma solução não prova que o desafio é divertido ou bem dosado.

Comece com um único motor de regras

Um solucionador só ajuda se sua interpretação dos movimentos corresponder ao jogo. Uma peça desliza até a parede, outra peça ou uma porta que não aceita sua cor. O OutBrick também tem estados adicionais: chaves mudam portas, o gelo precisa de vários deslizes e geradores introduzem peças à espera. Uma implementação simplificada deixaria erros possíveis exatamente onde mais importam.

Por isso, a busca pede ao próprio motor do jogo os movimentos legais e usa o mesmo código de transição. A chave do estado também inclui o estado das portas e um contador de movimentos quando portas cíclicas ou temporizadas o tornam relevante. Dois tabuleiros visualmente iguais, mas com portas em estados ativos diferentes, precisam continuar sendo estados de busca distintos.

A busca encontra uma rota, não necessariamente a perfeita

O solucionador usa A* ponderado. Sua heurística ExitTable calcula quantos deslizes cada peça exigiria para sair pela porta adequada caso as demais peças fossem removidas. Esse tabuleiro simplificado é mais barato de analisar e oferece uma estimativa útil do trabalho restante. Dar mais peso à heurística favorece encontrar uma solução rapidamente.

Essa escolha tem um limite: não garante que a rota encontrada tenha o menor número de movimentos. A busca também pode alcançar o limite de nós. Nesse caso, o resultado é desconhecido, não impossível. Só esgotar todo o espaço de estados alcançáveis permite concluir que não há solução. Distinguir esses resultados evita transformar um atraso ou cancelamento em uma afirmação falsa sobre o tabuleiro.

Reproduza a prova desde o tabuleiro original

Encontrar uma sequência não é a verificação final. Para cada tabuleiro criado, guardamos uma prova: a sequência de movimentos entre o estado inicial e a conclusão. A reprodução começa em um estado novo, confere a validade da prova e aplica cada movimento pelas regras reais. Um movimento ilegal encerra a verificação com falha.

O verificador também executa cada movimento outra vez a partir do mesmo estado anterior e compara estado resultante, eventos e resultado, para detectar transições inconsistentes. Depois de cada jogada, confere se cada peça continua em uma célula válida e se nenhuma ocupa a mesma célula que outra. No final, o tabuleiro precisa estar realmente vazio. Uma sequência plausível que deixa uma peça para trás não serve.

Ter solução não garante um bom ritmo

Uma sequência legal prova que existe um caminho. Não prova que uma pessoa vai encontrá-lo, considerá-lo justo ou sentir a dificuldade desejada. A solução do computador também não demonstra o menor número possível de movimentos. São questões separadas: reproduzir o conjunto inteiro verifica correção; ritmo e dificuldade são avaliados à parte.

O limite de movimentos também precisa permitir a rota verificada. A pessoa pode pensar quanto tempo precisar: o limite conta movimentos, e o OutBrick não tem cronômetro. Assim, o quebra-cabeça mantém pressão sem transformar a validação em uma corrida.

Uma verificação repetível antes de publicar

O resultado útil não é “o solucionador rodou uma vez”, mas que cada tabuleiro tinha uma prova reproduzida corretamente conforme as regras publicadas. Se uma regra ou um tabuleiro mudar, o conjunto pode ser verificado outra vez. O primeiro movimento que falhar indica o problema: legalidade, determinismo, geometria ou condição final.

Foi assim que conferimos os 2.000 tabuleiros do OutBrick antes da publicação. Experimente esse tipo de quebra-cabeça no tabuleiro gratuito no navegador ou baixe o OutBrick para iPhone e iPad.

Perguntas e respostas

Algumas respostas úteis

Como o OutBrick verificou os 2.000 tabuleiros?

Um solucionador usou o motor de regras do jogo para encontrar rotas; cada sequência foi reproduzida desde o estado original, movimento por movimento.

O que significa quando a busca retorna “desconhecido”?

A busca pode atingir seu orçamento antes de explorar todas as possibilidades. Isso não prova que o tabuleiro seja impossível; é diferente de esgotar todo o espaço de estados.

A verificação prova que um tabuleiro é fácil ou divertido?

Não. Ela confirma uma rota legal. Dificuldade, justiça percebida e diversão são avaliadas separadamente.

APA 7

Referências

As referências permanecem no idioma original. Quando a fonte é um relato do próprio estúdio ou uma notícia, e não um estudo, o artigo deixa isso claro junto à afirmação.

    Escrito por

    Mourad Hamdi

    Mourad cria jogos pequenos e cuidadosos para os intervalos entre uma tarefa e outra. OutBrick é seu experimento contínuo com uma forma mais tranquila de jogar.

    Mais de Mourad