1 pontos por GN⁺ 2026-01-07 | 1 comentários | Compartilhar no WhatsApp
  • Jogo de puzzle de cercar o cavalo com um número limitado de paredes, em que o objetivo é criar a cerca mais ampla possível
  • O jogador clica nos blocos de grama para instalar paredes, e o cavalo não pode se mover na diagonal nem sobre a água
  • Incluir Cherries dentro da cerca rende pontos extras, e cercas maiores valem mais pontos
  • Oferece editor de fases, leaderboard, puzzle diário e navegação por fases criadas por usuários
  • Começou com uma ideia simples, mas evoluiu para um jogo no estilo de problema de otimização tipo Leetcode/Advent of Code

Visão geral do jogo

  • enclose.horse é um jogo de puzzle em que você cerca um cavalo usando um número limitado de paredes
    • O objetivo é cercar uma área o mais ampla possível
    • A pontuação é determinada pelo tamanho da cerca e pela quantidade de cerejas incluídas
  • A forma de jogar consiste em clicar nos blocos de grama para erguer paredes
    • O cavalo não pode se mover na diagonal nem sobre a água
    • Incluir cerejas dentro da cerca rende +3 pontos
    • Só é possível enviar uma tentativa

Interface e recursos do jogo

  • As informações da fase mostram tamanho (12x14), orçamento de paredes (12), número de partidas (4455) e ID da fase (ZtiI9g)
  • No menu de configurações, é possível ajustar nome, linhas da grade, tema e opções avançadas
  • O leaderboard salva o nome e permite comparar a pontuação com a de outros jogadores
  • Com o editor de fases, é possível criar e compartilhar puzzles
  • Na página “Browse”, é possível explorar fases criadas por outros usuários e votar depois de jogar

Histórico de atualizações

  • 29 de dezembro de 2025: lançamento inicial, adição do editor de fases e do leaderboard
  • 30 de dezembro: introdução dos recursos de puzzle diário (Daily puzzles) e puzzles anteriores (Past Puzzles)
  • 31 de dezembro: adição da aba de atualizações
  • 1º de janeiro de 2026: adição de Solver ao editor de fases, além da navegação e votação em fases criadas por usuários
  • 2 de janeiro: adição do recurso de rastreamento da maior área durante a partida
  • 3 de janeiro: adição do elemento cereja
  • 4 de janeiro: correção de bugs das cerejas e melhoria nos filtros de busca

Contexto de desenvolvimento

  • O desenvolvedor idealizou o jogo inicialmente como um problema de otimização no estilo Leetcode ou Advent of Code
  • Depois de testar por conta própria, concluiu que valia a pena transformá-lo em um jogo de puzzle bem-acabado
  • O jogo foi criado por Shivers e divulgado pelo site oficial e pela conta no X (Twitter)

Outros elementos

  • O recurso “Horse Tip” avisa ao enviar a tentativa quando ainda restam paredes
    • Há uma opção de “não mostrar novamente”
  • Com o recurso de relatório de bugs, é possível denunciar fases inadequadas ou impossíveis
  • Inclui alguns elementos de humor, como dar nome às cerejas (Name Five of Cherries)

1 comentários

 
GN⁺ 2026-01-07
Comentários do Hacker News
  • Foi um jogo realmente divertido. Se o desenvolvedor estiver coletando bem os dados, acho que daria até para agrupar 100 fases por nível de dificuldade e lançar no Steam.
    Dito isso, a animação da porta subindo quebra a lógica visual 2D e causa confusão.
    Espero que novos mecânicos de jogo sejam adicionados no futuro. Por exemplo:

    • Comida: o cavalo se move em direção à comida a cada turno. Fardos de feno ou torrões de açúcar poderiam servir como iscas
    • Ponto de objetivo: um quebra-cabeça em que você guia o cavalo pelo cercado para fazê-lo entrar em uma casa específica
    • Inundação: a água sobe a partir das bordas, e você precisa bloquear a água enquanto prende o cavalo
    • Alguém comentou que esse tipo de coleta de dados incomoda. Acho que também precisamos de jogos para curtir de forma pura, sem vigilância no mundo
    • Este jogo tem potencial como minijogo por turnos. Seria interessante colocar paredes para alterar a rota do cavalo até a saída e, com um número limitado de paredes, fazê-lo atravessar o maior número possível de casas
    • Concordo com a opinião de que o efeito da porta se movendo para cima não combina com a estética geral. Ainda assim, é um ótimo jogo
    • Eu interpretei essa animação como se fosse uma visão de RPG top-down. Não achei visualmente confuso, mas no celular foi incômodo porque era fácil tocar na casa errada
    • Acho que jogos simples são melhores. Se você souber programar, fazer algo assim por conta própria ao longo de alguns fins de semana também parece um bom projeto de aprendizado
  • Tentei encontrar à mão a solução ótima do quebra-cabeça do dia 8, e foi bem divertido.
    Comecei pela solução mínima e fui expandindo etapa por etapa, mantendo uma solução válida sempre que reposicionava as paredes.
    No fim, encontrei a pontuação ótima em 15 minutos

    • Houve quem dissesse que essa abordagem lembra a forma de pensar do TDD (desenvolvimento orientado a testes)
    • Eu também usei o mesmo algoritmo. A abordagem top-down não funcionou bem, mas foi muito divertido
  • Seria engraçado trocar as cerejas por baterias e renomear o jogo para Correct Horse Battery Stable

    • Ou então trocar as cerejas por pastries ou lanches de PBJ e chamar de Collect Horse Buttery Stable, o que também ficaria fofo
    • Também surgiu a ideia de usar grampos (staples) em vez de paredes
    • Alguém também sugeriu trocar as cerejas por cubos de açúcar e chamar de My Lovely Horse
    • Essa piada faz referência a xkcd 936
  • O jogo foi muito bom. Só achei uma pena que, ao clicar em “Show optimal”, eu não consiga comparar com a minha solução.
    As paredes ocupam uma casa e meia, o que confunde, e como o design parece cerca de dinossauro, seria melhor se fosse uma cerca de cavalo

    • Seria bom transformar “Show optimal” em um botão de alternância para poder alternar entre a minha solução e a ótima. Também concordo que, no celular, é difícil tocar por causa da sobreposição das paredes
    • Precisa de um botão para alternar rapidamente. Eu encontrei um jeito de voltar para a minha solução pelo menu de datas passadas
    • Pelo fato de o cavalo falar sobre damas demoníacas ao clicar nele, talvez exista algo mais ali
  • Em vez de N/A, seria mais temático usar N/EIGH como valor inicial da pontuação

    • Isso me lembrou um quadrinho sobre um parlamento de cavalos (neigh) que vi há algum tempo
    • Fiquei impressionado com a criatividade necessária para pensar nisso
  • Eu mesmo fiz um localizador de soluções

    1. Tire uma captura de tela da grade
    2. Faça upload em enclosure-horse-solution.onrender.com
    3. Confira a quantidade de paredes e clique em Solve
      Como é a versão gratuita, às vezes dá crash, mas adicionei cache.
      Dá para executar localmente pelo repositório no GitHub
    • No editor de fases, dá para criar mapas personalizados e ver a solução ótima. Se você recriar os mapas oficiais, também pode conferir a intenção do desenvolvedor
    • Também houve quem perguntasse se o cache é feito em memória ou em disco. Algo como Redis provavelmente seria mais estável
    • O servidor cai com frequência, então, se o resultado não aparecer, recomendam executar localmente
  • Queria que houvesse um recurso para comparar a minha solução e a solução ótima de uma vez só

    • Eu também tirei duas capturas de tela para comparar
    • Um modo de visualização lado a lado (diff) seria perfeito
  • Fiquei curioso sobre como encontrar a solução ótima desse problema por algoritmo. Tentei resolver algo parecido em Factorio, mas não encontrei uma abordagem rápida

    • No site, dizem usar Answer Set Programming (ASP) e o motor Clingo. Esse tipo de problema de maximização em grade provavelmente é NP-hard. Solvers SAT/SMT são ineficientes para cálculos de flood-fill
    • Também houve quem dissesse que uma abordagem de programação por restrições seria adequada. Basta tratar as posições das paredes como variáveis e definir como restrição as casas que o cavalo pode alcançar
    • Algumas pessoas disseram que, ao ver esse problema, pensaram em várias abordagens de otimização, como graph cut, SAT/SMT, ACSP etc.
    • Há uma discussão relacionada também no CS StackExchange
    • Houve ainda a opinião de que isso pode ser visto como um problema NP-hard, derivável de Sparsest Cut. A proposta era encontrar o corte mínimo e repetir a busca ajustando as capacidades
  • Sempre que vejo um domínio horse, acabo sorrindo e rodando traceroute bad.horse

    • Houve quem reagisse dizendo que essa piada é realmente linda
  • Parece que o desafio diário é liberado em horários diferentes dependendo do fuso. Meu amigo já vê o dia 9, enquanto eu ainda só vejo o dia 8.
    Seria bom sincronizar um mesmo horário global de liberação para facilitar competir com amigos