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

Como resolver quebra-cabeças de blocos deslizantes

Comece pela saída, encontre a jogada que abre espaço e conte antes de agir: o método de um designer para quebra-cabeças de blocos deslizantes.

  • 7 min de leitura
  • Publicado em
Tabuleiros reais de OutBrick sobre uma base índigo; à frente, um tabuleiro no modo para daltonismo com símbolos, enquanto blocos amarelos saem pela porta e Bricko observa
Ilustração do blog

Um bom quebra-cabeça de blocos deslizantes é feito para parecer impossível. Todas as casas estão ocupadas, cada bloco parece atrapalhar outro e a saída fica do lado errado. Crio e testo tabuleiros assim para OutBrick, e os mesmos cinco hábitos me ajudam a resolver quase todos, seja qual for o quebra-cabeça. Nenhum deles é um truque. São maneiras de olhar que transformam uma parede de blocos em uma lista curta de perguntas.

Comece pela saída e pense de trás para frente

Diante de um tabuleiro cheio, a reação natural é mover qualquer bloco que possa sair do lugar. Espere dez segundos. Escolha um bloco que precisa sair, olhe para a saída e faça uma pergunta: o que está entre esse bloco e o caminho para fora? Essa é a questão de verdade. Depois faça a mesma pergunta sobre cada obstáculo e continue até chegar a um bloco que já possa se mover.

O resultado é uma cadeia de dependências, lida de trás para frente a partir do objetivo: a saída depende do bloco amarelo; o amarelo depende de o verde sair da sua faixa; o verde precisa de espaço à esquerda. Psicólogos chamam esse raciocínio de análise meios-fins, e há boas evidências de que a maneira de apresentar um quebra-cabeça muda o quanto ele parece difícil. Kotovsky, Hayes e Simon apresentaram versões da Torre de Hanói com a mesma estrutura, mas regras superficiais diferentes, e algumas levaram muito mais tempo. Boa parte da dificuldade vinha de manter as regras e o estado atual do jogo em mente ao mesmo tempo. Dar nome à cadeia alivia um pouco essa carga.

Em OutBrick, as saídas são portas coloridas, e um bloco só sai pela porta da sua cor. Isso acrescenta uma regra útil à leitura de trás para frente: uma porta que não aceita aquele bloco funciona como uma parede, assim como a borda do tabuleiro. Para escolher o primeiro bloco, procure a cor cuja porta tem a cadeia mais curta de obstáculos à frente.

  • Escolha um bloco que precisa sair.
  • Liste o que está entre ele e a saída.
  • Repita para cada obstáculo até encontrar um bloco que já possa se mover.
  • Siga a cadeia na ordem, começando por esse bloco.

Fontes1Kotovsky, K., Hayes, J. R., & Simon, H. A. (1985). Why are some problems hard? Evidence from Tower of Hanoi. Cognitive Psychology, 17(2), 248–294.

Encontre a jogada que abre espaço

Um tabuleiro cheio tem bem menos jogadas possíveis do que parece. Conte antes de começar. Em um tabuleiro apertado, pode haver só algumas opções, e uma delas costuma ser a jogada em torno da qual o tabuleiro foi construído: o deslize que abre um espaço livre e deixa a pilha se desfazer aos poucos. Casas vazias são a moeda dos quebra-cabeças deslizantes. A melhor jogada inicial costuma abrir espaço para as próximas; raramente resolve algo sozinha.

O lugar onde você deixa um bloco importa tanto quanto o bloco que move. Em OutBrick, o bloco desliza até onde você o arrastar e para onde você soltar, antes de uma parede ou de uma porta que não aceita aquela cor; empurre-o contra um vizinho e os dois trocam de lugar. Um bloco estacionado no meio de uma faixa pode não atrapalhar agora, mas ficar no caminho daqui a quatro jogadas. Antes de soltar, confira se você não fechou uma passagem de que vai precisar depois.

Há uma razão matemática para esses quebra-cabeças resistirem a atalhos. Hearn e Demaine provaram que os quebra-cabeças generalizados de blocos deslizantes são PSPACE-completos. Em termos simples, isso quer dizer que não se conhece um método capaz de resolver com eficiência todos os tabuleiros grandes. As pessoas recorrem a estratégias práticas como as deste guia. Isso também significa que um bom quebra-cabeça precisa ter um caminho possível. OutBrick verifica isso da forma mais rigorosa: um solucionador resolveu os 2.000 tabuleiros antes do lançamento. Se você travar, o nó está na posição que criou, não no tabuleiro.

Fontes2Hearn, R. A., & Demaine, E. D. (2005). PSPACE-completeness of sliding-block puzzles and other problems through the nondeterministic constraint logic model of computation. Theoretical Computer Science, 343(1–2), 72–96.

Conte as jogadas antes de se comprometer

Planeje sequências curtas. A memória de trabalho comporta poucos itens de cada vez; a revisão de Cowan estima cerca de quatro blocos de informação. Por isso, tentar enxergar dez jogadas à frente geralmente significa ver quatro com clareza e adivinhar o resto. Em vez disso, agrupe as jogadas em intenções: “abrir a coluna da esquerda” vira um único objetivo, mesmo que exija três deslizadas. Planeje duas ou três intenções, execute-as e olhe o tabuleiro de novo.

Se o quebra-cabeça tem limite de jogadas, esse cuidado faz diferença. OutBrick não tem cronômetro; a corda de cada tabuleiro indica o limite de jogadas, e o limite e os objetivos do tabuleiro aparecem desde o primeiro toque. Isso muda o que é escasso. As jogadas têm custo; pensar não custa nada. Use o tempo à vontade e conte as jogadas com cuidado. Antes de cada deslizada, passe por estas perguntas.

  • O que esta jogada vai permitir?
  • O que ela bloqueia agora ou daqui a duas jogadas?
  • Uma deslizada mais longa faria o trabalho de duas curtas?
  • Ela me aproxima da cadeia que montei a partir da saída?

Fontes3Cowan, N. (2001). The magical number 4 in short-term memory: A reconsideration of mental storage capacity. Behavioral and Brain Sciences, 24(1), 87–114.

Use o desfazer como ferramenta para pensar

Desfazer funciona melhor como experimento. Quando duas jogadas parecem igualmente boas, faça uma, observe o que ela abre e desfaça. Você aprendeu algo sobre o tabuleiro que não descobriria só olhando, e gastou apenas um desfazer. Quem vê o desfazer como sinal de fracasso tende a passar mais tempo olhando e aprender menos.

OutBrick foi pensado com essa ideia em mente. O primeiro desfazer de cada tabuleiro é grátis e nunca acaba. Depois, os desfazeres vêm de uma reserva de cinco, que recupera um a cada 25 minutos. Quando não sobra nenhuma jogada possível, o tabuleiro se embaralha sozinho, de graça. Então use o desfazer grátis cedo e de propósito, na jogada sobre a qual você tem menos certeza, em vez de guardá-lo para uma emergência.

Há algo a saber sobre as estrelas. Em um tabuleiro de OutBrick, elas seguem a pontuação, não o número de desfazeres, e cada jogada que sobra quando os objetivos são cumpridos vira um blaster que aumenta a pontuação. Se seu objetivo é apenas limpar o tabuleiro, experimente à vontade. Se busca três estrelas, gaste as jogadas com cuidado e faça os testes primeiro na cabeça.

Saiba quando reiniciar

Desfazer corrige uma jogada. Reiniciar corrige um plano. Os sinais de que chegou a hora de reiniciar são fáceis de reconhecer: você desfez a mesma jogada três vezes, está deslizando um bloco para lá e para cá, não sabe para que servem seus próximos dois objetivos ou bloqueou a área necessária com blocos que estacionou. Nessa altura, continuar desfazendo só faz você voltar por um caminho que não levaria a lugar nenhum.

Considere com honestidade o custo de começar de novo no jogo que está jogando. Em OutBrick, entrar em um tabuleiro exige uma vida, mas não a consome; limpar o tabuleiro não custa nada; e você só perde uma vida quando termina uma tentativa sem limpar o tabuleiro. As vidas voltam uma por vez a cada 30 minutos. Por isso, vale usar o desfazer para pequenos ajustes e guardar uma nova tentativa para quando sua leitura do tabuleiro inteiro estava errada.

Às vezes, a melhor forma de recomeçar é deixar o celular de lado. Um tabuleiro que parecia uma parede no fim do dia pode se abrir nos primeiros 30 segundos da manhã seguinte. Nenhum tabuleiro de OutBrick tem cronômetro; ele vai esperar por você. Para hábitos específicos de organização por cor, veja também as dicas para quebra-cabeças de separar cores. Se quiser praticar o método primeiro, o guia de jogo oferece um tabuleiro para experimentar no navegador, do fácil a um desafio de verdade.

Perguntas e respostas

Algumas respostas úteis

Qual é o truque para resolver quebra-cabeças de blocos deslizantes?

Não existe um truque único, mas um hábito resolve boa parte do problema: comece pela saída e pense de trás para frente. Liste o que bloqueia o bloco que você precisa mover, depois o que bloqueia esses obstáculos, até chegar a um bloco que já possa se mover. Em seguida, procure a jogada que abre mais espaço.

Todos os quebra-cabeças de blocos deslizantes têm solução?

Não. Algumas configurações dos quebra-cabeças deslizantes clássicos não têm solução. Por exemplo, metade das posições iniciais possíveis do quebra-cabeça de 15 peças é insolúvel. Quebra-cabeças criados para jogar devem ser verificados antes do lançamento. Um solucionador resolveu todos os 2.000 tabuleiros de OutBrick antes de serem publicados.

Quantas jogadas devo planejar à frente?

Para a maioria das pessoas, bastam dois ou três objetivos pequenos, cada um com algumas jogadas. A memória de trabalho comporta poucos itens de cada vez, então planeje por etapas, como “liberar a faixa da esquerda”, execute-as e depois olhe o tabuleiro novamente.

Usar o desfazer é trapaça?

Não. Desfazer é uma das melhores maneiras de entender como um tabuleiro funciona. Em OutBrick, o primeiro desfazer de cada tabuleiro é grátis, e as estrelas seguem a pontuação do tabuleiro, não o número de desfazeres.

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.

  1. Kotovsky, K., Hayes, J. R., & Simon, H. A. (1985). Why are some problems hard? Evidence from Tower of Hanoi. Cognitive Psychology, 17(2), 248–294. doi.org/10.1016/0010-0285(85)90009-X (abre em uma nova aba)
  2. Hearn, R. A., & Demaine, E. D. (2005). PSPACE-completeness of sliding-block puzzles and other problems through the nondeterministic constraint logic model of computation. Theoretical Computer Science, 343(1–2), 72–96. doi.org/10.1016/j.tcs.2005.05.008 (abre em uma nova aba)
  3. Cowan, N. (2001). The magical number 4 in short-term memory: A reconsideration of mental storage capacity. Behavioral and Brain Sciences, 24(1), 87–114. doi.org/10.1017/S0140525X01003922 (abre em uma nova aba)

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