Tetris Preguiçoso
(lazytetris.com)- 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
Isso é fala ou peido?
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
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
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
As coisas que você faz são realmente divertidas. Veja também esta coisinha estranha feita pela mesma pessoa: https://passwordbasket.com :)
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
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
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
No fim, depois de avançar o bastante, a velocidade de apertar “para cima” não consegue superar a gravidade, e a gravidade vence
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
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 :-)
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
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