4 pontos por GN⁺ 2025-05-28 | 2 comentários | Compartilhar no WhatsApp
  • Lazy Tetris é um jogo de progressão automática que, diferentemente do Tetris tradicional, não exige que o usuário mova as peças manualmente
  • O usuário pode iniciar o jogo com apenas um clique
  • O algoritmo encontra a posição ideal e posiciona as peças automaticamente
  • Minimiza a intervenção do usuário e oferece uma experiência focada em observação
  • Ao contrário do Tetris tradicional, seu destaque é a jogabilidade passiva

Introdução ao Lazy Tetris

Lazy Tetris é um jogo de Tetris automático em que o usuário não precisa controlar cada movimento manualmente.

Características

  • Interação mínima do usuário
    • Depois que o jogo começa, ele prossegue automaticamente, sem necessidade de usar as teclas de direção
  • Uso de algoritmo automático
    • Um algoritmo interno decide a melhor posição para cada bloco de Tetris e o posiciona
  • Interface intuitiva
    • É possível iniciar o jogo com um único clique no botão "Start"
  • Experiência centrada na observação
    • O usuário tem a experiência de assistir ao jogo se desenrolar sozinho

Diferenças em relação ao Tetris tradicional

  • Diferentemente de um jogo de Tetris comum, não é necessário inserir comandos diretos para mover ou girar os blocos
  • Todo o processo de jogo é automatizado, permitindo entender com facilidade como o algoritmo toma decisões

Perspectiva de uso

  • É uma plataforma que permite experimentar os conceitos de otimização de algoritmos e automação por meio de um jogo simples
  • É adequada para iniciantes em programação e design de jogos usarem no aprendizado de conceitos de automação

2 comentários

 
ahwjdekf 2025-06-01

Isso é fala ou peido?

 
GN⁺ 2025-05-28
Opiniões no Hacker News
  • Obrigado por jogarem e deixarem boas sugestões e comentários. No fim de semana, é bem provável que eu adicione várias sugestões: multi-bag em vez de totalmente aleatório, remover a limpeza automática ao fim do jogo, esvaziar o hold ao reiniciar o jogo, mudar o nome para LAZY PUBLIC DOMAIN BLOCK GAME etc.
    A UX também deve melhorar. Algumas sugestões já estão implementadas, mas parecem não ser intuitivas ou difíceis de encontrar
    Clicar no fantasma ativa a peça fantasma. Pessoalmente, não gosto de peça fantasma, então sempre deixo desligada, e como o jogo é meu, o padrão também é desligado
    Tocar à esquerda/direita gira para a esquerda/direita; a seta para cima e Shift no teclado também giram para a esquerda/direita; Delete é UNDO; Enter é HOLD
    Dá para mover a peça arrastando por toque ou com clique, inclusive arrastando para cima. Não é preciso clicar diretamente na peça; dá para arrastar de qualquer lugar
    Toque com dois dedos é DROP, e eu jogo assim; é muito satisfatório. Toque com três dedos é HOLD
    No iOS, se você salvar na tela inicial, deve funcionar como um app em tela cheia
    Ao fazer um “Tetris” (eliminar quatro linhas de uma vez), aparece um botão de presente secreto, mas é só um link para o meu livro. Porque tudo que eu faço é uma exploração financeira sem alma
    Como sou meio preguiçoso, fiz sentado no sofá, no celular, misturando rosebud.ai e ChatGPT. A otimização de performance eu tive que fazer ligando o notebook e mexendo eu mesmo, e essa parte pareceu trabalho de verdade, então não curti muito. Ainda assim, vibe coding é divertido
    Fiz este jogo para mim, para jogar do jeito que eu gosto, e fico feliz que outras pessoas também tenham curtido

    • Multi-bag pode ser um pouco complexo demais. Um jeito bom é manter uma janela deslizante das últimas n peças, como no TGM, e sortear de novo até m vezes até sair uma peça que não esteja nessa janela
      Pelo que sei, normalmente n é 4 e m é 6. É fácil de implementar, funciona bem e não parece previsível demais como um single bag
      Se você pré-carregar a janela com dois S e dois Z no início, dá para reduzir a chance dessas peças aparecerem logo no começo, diminuindo a irritação
    • Gosto da atitude de fazer um jogo para si mesmo e achar ótimo se outras pessoas também gostarem
      Quando cheguei ao primeiro hold, esqueci a tecla e precisei voltar para a tela inicial para conferir; clicar em “hold” com o mouse não fazia nada. Seria bom ter uma lista de teclas ao lado ou abaixo de “hold”
      Vi a amostra do livro e pareceu divertida; talvez eu compre de verdade. Também parece algo que funcionaria como jogo de cartas
      Também é bom para quem tem filhos. Como dá para simplesmente parar no meio, é ótimo
    • Isso soa como se você quisesse acabar inventando o MS Excel
    • Bug: ao arrastar, frequentemente aparece texto selecionado. Surgem opções de leitura em voz alta ou criação de link, e depois disso não dá mais para arrastar objetos na página
    • Acho que seria bom alinhar com o esquema de controles do tetris.com oficial
  • As coisas que você faz são realmente divertidas. Veja também esta coisinha estranha feita pela mesma pessoa: https://passwordbasket.com :)

    • Eu nunca tinha pensado que um gerador de senhas pudesse ser divertido, mas mudei de ideia. Agora acredito que geradores de senha também devem ser divertidos
    • Ri tão alto que fiquei preocupado de ter incomodado os vizinhos. É realmente excelente
    • Excelente. É divertido tentar gerar a senha “passwordpassword”
      Para referência, o melhor que consegui nas configurações padrão foi Pa.s; depois disso, reiniciei tomado de raiva com sequências irreconhecíveis
    • Muito obrigado. Isso é tudo que eu quero ouvir no mundo
    • Legal, e seria ainda mais legal se os caracteres da senha gerada caíssem direto na cesta. É só minha opinião pessoal
      Também me lembrou The Password Game:
      https://news.ycombinator.com/item?id=36493715
  • Joguei um pouco e não saiu nenhuma peça L. Parece que as peças são de seleção aleatória
    Se quiser reduzir ainda mais o estresse, poderia usar um sistema de single bag. Está no fim da página do link abaixo
    [1] https://strategywiki.org/wiki/Tetris/Pieces#L_piece

    • Ótima ideia. Obrigado por compartilhar; vou adicionar multi-bag
    • Aconteceu o mesmo comigo com a peça I, e eu teimosamente continuei empilhando linhas deixando uma lacuna de um bloco. Quando as peças I finalmente vieram e eu consegui fechar, foi muito satisfatório
  • Já que estamos falando de implementações incomuns de Tetris, fiz um clone de Tetris baseado na cosmopolitan libc para usuários de display braille
    Ou seja, as peças “caem” horizontalmente, e os blocos são renderizados em braille Unicode
    https://github.com/mlang/betris
    Um grande agradecimento a @jart. O cosmo ajuda muito em trabalhos de TUI multiplataforma

    • Há algum tempo fiz algo parecido com Tetris normal, mas em que era possível mover as peças para cima, contra a gravidade. Na prática, a jogabilidade não muda muito
      No fim, depois de avançar o bastante, a velocidade de apertar “para cima” não consegue superar a gravidade, e a gravidade vence
    • Gosto muito do cosmo. Obrigado ao @jart por desenvolvê-lo
  • Jogando, tive uma reflexão interessante sobre como isso se conecta ao trabalho de uma startup
    Mesmo sem as restrições de tempo e gravidade, e com undo, ainda é fácil fazer escolhas que mantêm a estrutura, mas deixam lacunas difíceis de preencher. No fim, isso leva a um monte de tralha difícil de remover
    Mesmo podendo enxergar um pouco à frente, é difícil escapar da psicologia humana de ajustar a estrutura esperando uma peça específica que pode ou não vir no futuro próximo. É meio parecido com construir para um cliente que não existe ou talvez nunca venha
    Mesmo com todas as vantagens, você ainda pode se encurralar e fracassar
    Se você dedicar tempo a observar, há muito a aprender com este jogo

  • Ainda assim, tentei fazer um Tetris em “tela cheia” e acabei me matando. De algum jeito, sempre encontro uma forma de recolocar o estresse

    • Não sei por que isso seria estressante. Resolver o quebra-cabeça de como preencher a tela parece divertido e relaxante
      Mas eu gostaria de algumas melhorias para esse estilo de jogo
      Gostaria que o jogo não terminasse imediatamente quando uma peça toca a linha de cima, e sim permitisse continuar enquanto ainda houver espaço para colocar peças. Pelo que acabei de ver, talvez nem sempre seja assim; parece acontecer só quando a próxima peça não cabe na posição em que seria colocada
      Mesmo que não haja mais espaço, eu gostaria que o jogo não terminasse se ainda houver linhas que podem ser removidas. O jogo só deveria acabar quando não houver nenhuma ação possível. Idealmente, ao fim do jogo, o campo não deveria ser limpo automaticamente, para permitir admirar o resultado, e seria bom acrescentar um botão de reset para limpar manualmente
      Ao recomeçar, parece correto que o hold seja esvaziado. Um hold maior também seria bom. E pontuação? Só porque é relaxante não significa que não possa ser competitivo
      Pressão de tempo me parece estressante, mas quebra-cabeças difíceis são ok se houver tempo para resolver e se um erro não fizer você perder o progresso
      Consegui preencher 17 linhas sem limpar nenhuma antes do jogo acabar. Alguém consegue vencer? Vai exigir bastante sorte com as peças finais :-)
    • De algum modo, parece uma metáfora apropriada para a vida
  • Pedido de recurso: para deixar ainda mais preguiçoso, seria bom mostrar com antecedência onde a peça vai pousar, como uma imagem fantasma

    • Há um toggle de fantasma à direita
  • Eu preferia o jeito de descer a peça e colocá-la no lugar. Ter que apertar “drop” separadamente para uma peça que já foi levada até embaixo e solta é um pouco incômodo e pouco intuitivo
    Seria bom se, ao soltar o arrasto quando ela está encostada no chão, acontecesse um drop automático
    Ainda assim, é divertido e relaxante

  • Muito bom. Faz observar o papel da pressão de tempo nos jogos e por que calibrá-la é essencial
    Com tempo demais, fica muito mais fácil, a ponto de deixar de ser divertido para mim. Isso, por si só, é ótimo

  • Uau, ideia realmente excelente. Os controles no mobile também tinham um acabamento muito alto
    Não houve problemas como zoom aleatório, seleção de texto ou rolagem esquisita, e parecia um app baixado