Thank you all for playing and leaving such great suggestions and comments!!
I will likely add many of these suggestions over the weekend.
- Multi bag instead of fully random
- No auto clear on game end
- Clear hold on game reset
- Rename to LAZY PUBLIC DOMAIN BLOCK GAME
also, I need better UX or something, because some of the suggestions are already implemented but it’s prob not initiative/ hard to find.
Clicking on the ghost enables the ghost piece. I personally hate ghost pieces, and I always disable them, so because it’s my game, I have it off by default.
Tapping left side and right side rotate left and right.
Keyboard Up and Shift rotate left and right.
Delete key does UNDO
Enter does HOLD
You can touch drag or click drag to move your piece, even dragging up.
Oh, also you can drag from anywhere, you don’t have to actually click the piece.
You can two-finger tap to DROP (that’s how I play, it’s so satisfying)
Three-finger-tap is HOLD
You can save to home screen on iOS and it should play as a full screen app.
If you get a “Tetris” (four line clear at once) a secret gift button appears, but it’s just a link to my book, because everything I do is soulless cash grab.
I’m lazy, and built this game sitting on the couch on my phone using a mix of rosebud.ai and ChatGPT. I also had to get in my laptop to do performance optimizations manually, that part sucked, it was like real work. But otherwise, vibe-coding is fun.
This game is made specifically for me and how I like to play, and I’m glad others enjoyed it!
Multi bag is probably over-complicating things. You can take a note from TGM and just keep a running window of the last n pieces and reroll m times until you get one that wasn't in the window or run out of tries. I think n is usually 4 and m is usually 6. This works great, is easy to implement and doesn't feel too predictable (i.e. like single bag does.) Also you can preload the window with two S's and two Z's to lower the odds of getting those first, since that's annoying :)
> Clicking on the ghost enables the ghost piece. I personally hate ghost pieces, and I always disable them, so because it’s my game, I have it off by default.
I love this. You made a game for you, if others like it, great!
> Enter does HOLD
When I got to my first hold I had to go back to the Home Screen to see this, because I'd forgotten. And clicking "hold" with the mouse didn't do anything. Maybe have a list of the keys on the side? Or under where it says "hold"?
> If you get a “Tetris” (four line clear at once) a secret gift button appears, but it’s just a link to my book, because everything I do is soulless cash grab.
I might actually get the book! Looking at the sample it looks fun. Could be a card game too.
> This game is made specifically for me and how I like to play, and I’m glad others enjoyed it!
I did! It's great for people with kids, because you can just stop in the middle.
That's excellent. I'm enjoying trying to generate the password "passwordpassword". (To be clear, the best I've gotten on default settings is Pa.s and then gobbledgook rage-restart.)
I had the same with an eye piece and I stubbornly continued building rows with single tile gap. It was so satisfying to get the I pieces in the end and finish it!
I love this! It really allows you to examine the role of time pressure in gaming, and why tuning it is so key -- having too much time makes it significantly easier, to the point where it wasn't fun for me. Which is brilliant!
While we are at unconventional tetris implementations: I wrote a cosmopolitan libc based tetris clone for Braille display users. IOW, pieces "fall" horizontally, and blocks are rendered with (unicode) braille.
I made one once which was just like normal Tetris, but you could fight against gravity and move the pieces upwards. It actually doesn't change the gameplay that much, because eventually you progress far enough that you just can't push 'up' fast enough, and gravity wins.
i had some interesting thoughts while playing about how this aligns with the work of startups.
Even with the constraints of time and gravity removed and with undo, it's still quite easy to make choices that keep the structure up but leave gaps which are hard to fill in. These end up leading to cruft that's hard to get rid of.
With some degree of ability to look ahead, it's hard to break away from the human psychology of aligning the structure to your expectations for a certain piece, that may or may not be coming in the near future. somewhat analogous to building for an audience that may not be there or may never come.
Despite having all advantages, it's still quite possible to paint yourself into a corner and fail.
One can learn a lot from this game if they take the time to observe it.
I prefered moving the piece down into the right place. I found it a bit annoying and also not intuitive to have to press ‚drop‘ for a piece which was down already and which i released. Would be nice if it auto-dropped on drag release when at the bottom.
why is that stressful? i find a puzzle like figuring out how to fill the screen fun and relaxing.
i'd like to see a few improvements for that though:
don't end the game just because a piece touches the top row. allow to continue playing as long as there is room for more pieces to be placed. (i just noticed that doesn't happen all the time. maybe only when the next piece doesn't fit into the spot to be placed)
but even if there is no more room, don't end the game when there are rows that still can be cleared. the game should only end when no other action is possible. and ideally, don't automatically clear the field when the game ends. let me admire the result, and add a reset button to clear manually instead.
other features that could be nice: when starting over the hold should probably be cleared. a bigger hold would also be nice. and how about a score? relaxing doesn't mean it can't be competitive. i mean we all experience stress differently. i find being pressured for time to be stressful, but i don't mind a hard puzzle as long as i have time to solve it and am not losing progress when i make a mistake.
i managed to fill 17 rows without clearing any before the game ended. can anyone beat that? you'd have to be very lucky with the pieces you get at the end :-)
Wow this is such a great idea. Also the controls on mobile were top notch. No issues with random zooming, text selection, weird scrolling etc. Felt like a downloaded app.
There's a board-game version of Tetris that I've been playing with my toddler, and is pretty much the same low-stress approach. It's also multiplayer (the next piece everyone must use is decided by drawing cards from a deck). The only shortcoming is that you can't do the maneuver where you slide a piece sideways just as it hits the bottom to slot it into place under another piece. Highly recommend!
Just a word of warning, the Tetris Company is pretty aggressive about protecting their trademarks. I'd at least pick a different name, but sometimes they even go after Tetris clones which don't use the name (e.g. Apotris).
The Tetris mark as a whole has an amazing history. It's a mark that was created from the ashes of a state that didn't allow trade and was involved in conflict and is kind of a marvel at the amount of cooperation that needs to happen for something like this. It's basically all edge cases.
Going after "clones" that have similar gameplay is wrong and they should (and likely do) know better. This has been resolved with Hasbro in the past as they were very litigious and went after clones of their games like Scrabble claiming their patent (and other parts) extended to the gameplay elements etc. IIRC the court rejected that argument and said that they can copyright or trademark the color combinations, names of points, etc. but they cannot patent the fundamental scrabble gameplay etc.
AIUI it's some weird legal sleight of hand where they don't (and can't) actually own the Tetris gameplay mechanics, but they have successfully argued in court that the appearance of the game constitutes their trade dress, and in practice you can't really implement the Tetris mechanics without the result looking like Tetris.
TTC is the gaming version of Oracle in that one meme[1], 90% of their raison d'etre is just to scare people away from making Tetris clones or variants without their permission so they can keep collecting rent on it forever.
Not just 'Tetris' (and *-'tris') trademark and Lanham Act trade dress, but they have also successfully argued in court [1] that the 'look and feel' of Tetris constitutes its copyrighted expression. In that case, Tetris Holding argued (and the judge agreed) that even the use of the seven one-sided tetromino playing pieces was part of their copyright.
Here's the description of the only Tetris gameplay mechanics the judge in this case conceded cannot be protected:
> Tetris is a puzzle game where a user manipulates pieces composed of square blocks, each made into a different geometric shape, that fall from the top of the game board to the bottom where the pieces accumulate. The user is given a new piece after the current one reaches the bottom of the available game space. While a piece is falling, the user rotates it in order to fit it in with the accumulated pieces. The object of the puzzle is to fill all spaces along a horizontal line. If that is accomplished, the line is erased, points are earned, and more of the game board is available for play. But if the pieces accumulate and reach the top of the screen, then the game is over. These then are the general, abstract ideas underlying Tetris and cannot be protected by copyright nor can expressive elements that are inseparable from them.
Disclaimer: I chose the colors from first principles and drew the graphics for Xio's version from scratch in Photoshop without any reference (as a volunteer; it was my friends' company), had to sit through depositions about this, etc.
In theory the Tetris Company is incorrect on the merits (the features they claim as "trade dress" are clear aspects of the game rules, not ornamentation, and in Xio's game had quite notable gameplay differences, especially in its multiplayer variants, and significant graphical style differences) and a discerning judge should see through the argument and find against them.
In practice judges often make a snap judgment based on personal prejudices (in this case, that the appearance amounted to "wholesale copying" that "pilfer[s] another's creativity" "without offering any originality or ingenuity of its own" and that such features as the way the pieces move falling from the top of the screen and the dimensions of the game board are "expression" rather than gameplay, and "Xio was also free to design a puzzle game using pieces of different shapes instead of using the same seven pieces used in Tetris." etc.) and ignore the letter and spirit of the law, filling in the decision starting from the conclusion. It has to date been too bothersome for someone with deep pockets to contest this to the appellate level.
I agree, the judgment read like a post hoc rationalization from someone unfamiliar with game development, uncritically parroting arguments of the side with a deeper bench.
What surprised me most from the ruling was how it took the legal doctrine of idea-expression dichotomy and twisted it into absurdity, hinging on an implicit argument that a game design essentially serves no utilitarian 'function' or 'purpose'. Core mechanics or essential gameplay rules like the tetrominoes or the 10-block width of the playfield are thus marked 'expression' or 'arbitrary flourishes', leaving a vague, unidentifiable abstraction of a falling-blocks puzzle game as the only unprotectible set of game rules that form its 'idea'.
Xio was free to design a puzzle game without tetrominoes, or downward+lateral+rotating movements, or a 10x20 playfield, and it would still 'function' just as well (that is: not at all, it's just a game). A chess game developer is equally free to design a strategy game without an 8x8 board or the knight's distinctive L-shaped movement, but it would no longer be chess, it would be rules for a completely different game.
Thanks, I thought the source had link-rotted but their server is just misconfigured (it looks like they switched from the www subdomain to a naked domain, but didn't set up a redirect, so old www links just throw an error).
I've always loved this image set. I have a feeling it's very different in 2025 though; would love to hear what current or very recent employees at these companies think
The name is the most important part, as it gives them a way to look for games that have their name but aren't theirs. But you're mostly right that they actually go after any game that has the same gameplay and is relatively popular, but only when they can easily issue a DMCA takedown. It's not like they ever said that this was their policy but you can see it bear out time and again.
TETR.IO and Jstris are insanely popular games that have been up for years with no action against them since they aren't hosted on another platform/marketplace.
This is also why Apotris got 2 DMCA takedowns on both Github and itch.io 3 months apart from each other, but after hosting the game on my own site, they haven't taken any further action in the past 2 years while it has continued to grow in popularity.
The shapes are called tetrominos, four squares connected orthogonally. Tetris the game, was created with pentominoes (5 squares) and scaled down to tetrominos. The game was inspired by physical puzzles where fill a rectangle with the shapes. So these shapes existed before Tetris.
Would they go after the shapes? Possibly. See "Tetris Holding, LLC v. Xio Interactive, Inc.".
I could imagine the specific combination where the shapes colors match the original could get into trademark territory, as the colors have no in-game requirement to be those specific values.
Which is crazy, because the shapes are just an idea, and you can't copyright ideas. They also couldn't be a trademark infringement (IANAL, though) if you don't use them in your branding.
They can go after you for anything. Whether or not that would hold in court is a separate question, but they count on the fact that you would be probably unwilling to test it.
It is the series of shapes in one project that makes it Tetris. So think of it as a series of copied ideas in one product that make it a legal challenge
They don't claim copyright on the mechanics. They pursue trademark violation. If it has falling tetrominos, it might be confused with Tetris, is the idea. You can use different shapes and be fine.
Great idea, played until I got a fullscreen clear, I really like it but the single rotation key is annoying, I suggest having separate clockwise/counter-clockwise keys. Also single bag randomization algorithm please (look up 7-bag, 7BR), bag makes even NES Tetris super chill since you never get overwhelmed or left waiting for a long piece. Another suggestion is to add a "ghost piece". Basically a display for where the piece is going to end up if you hit drop.
Others in this thread are right. You should avoid the "-tris". My favourite Tetris clone calls itself "Shiromino" for example. Maybe "Slo'mino" to emphasize the slowness of it, or something like that, I'm sure you can come up with a way better name.
I don't mean to be overbearing this is a very fun idea and I enjoyed my time with it!
I send it to my wife and she couldn't move the pieces because the page preview exits when she swipes. There are several tricks to disable this default behavior and it would be nice to add them
I laughed out like crazy for minutes on reading the title. I had to re-visit one of my regular saying and I thought that was cool but it ain't no more, “Business is Chess, and Life is Tetris.”
I’m going to move the first piece down sometime soon.
This is really cool! My kids like watching me play Tetris, but they don't like playing themselves because of the speed of the game, even when it first starts.
Neat. However, I noticed that the page description reads "No stress, memory-optimized 3D Tetris variant.", but I can't figure out what's supposed to be 3D about it.
Ha, I missed that. The AI prob wrote that. It thinks it’s 3D because it’s using the three JS library and I was asking for performance optimization ideas
It would be great if undo would make the piece appear at the spot I dropped it from. So I can correct mistakes by "undo", "left", "drop".
But what I am really looking for in Tetris is the game to train me. After observing me play for a few minutes it tells me: _"Hey, I notice you always deal with L pieces horizontally. Proffesional players usually prefer to X so they can achieve Y"_
Tetris the Grand Master 4 (that has been released recently on Steam) has a training mode that suggest to you where to place you pieces. You can even select different goal for the CPU (survival, make as much Tetris as possible, make as much T-spin as possible, ...). Of course when it gets fast your brain cannot process the suggest and it's kinda useless, but it's a good first step. Also the fundamentals of Tetris are simple to recite: maximize your piece placement possibilities / minimize your piece dependencies, avoid overstacking over holes, be mindful of your piece mobility; this can boils down to "play flat but not too much".
As someone who tried to be good at tetris but has failed miserably, this has potential to be a good tool to practice lookahead. Of course for that one'd need to have an option to see next N pieces in the queue.
But it's indeed a nice and relaxed take on tetris.
Playing on desktop with a keyboard, I cannot move pieces up when they reached the floor, though. I moved one piece down too much thinking it was possible to move it up again and that caused me to stress a bit ;)
This is super fun and relaxing. Maybe this is me being supremely lazy in Lazy Tetris, but I wish there was a way to fully clear the whole thing to reset the game without refreshing the page. That would let me play this endlessly.
What if you start at a reasonably easy gravity but progressively ease up on it so things get slower and theres a baseline to move down from rather than it always being free and easy
This is a great idea and I love it but somehow I’m randomly having issues hitting the Drop button, which make this unbearably stressful/frustrating. (iPhone SE)
Apparently this tetris clone has a relatively unforgiving piece generator, so I'd say the opposite would something on the other end of the speed spectrum
Was this vibe coded with AI? Based on one of your replies here, and your post history, I think it is.
I also think some of your comments here are also AI-generated, e.g. this one where you both posted a submission and asked yourself to "stop posting AI generated garbage":
Can you explain this comment you posted a while back, on your own HN submission (you talking to yourself?):
> "Adam, congrats on your book, but please stop spamming this message board with your AI Generated garbage"
Note if the above sounds aggressive, I didn't write it. You did... in reply to yourself! To be honest it seems as if you're writing comments using an LLM, and the LLM got confused.
It is good but not intuitive. Also the line doesn’t clear when all tiles in the row are filled. It is good to show the shadow of the piece where it would fall - at least as an option.
I will likely add many of these suggestions over the weekend.
- Multi bag instead of fully random
- No auto clear on game end
- Clear hold on game reset
- Rename to LAZY PUBLIC DOMAIN BLOCK GAME
also, I need better UX or something, because some of the suggestions are already implemented but it’s prob not initiative/ hard to find.
Clicking on the ghost enables the ghost piece. I personally hate ghost pieces, and I always disable them, so because it’s my game, I have it off by default.
Tapping left side and right side rotate left and right.
Keyboard Up and Shift rotate left and right.
Delete key does UNDO
Enter does HOLD
You can touch drag or click drag to move your piece, even dragging up.
Oh, also you can drag from anywhere, you don’t have to actually click the piece.
You can two-finger tap to DROP (that’s how I play, it’s so satisfying)
Three-finger-tap is HOLD
You can save to home screen on iOS and it should play as a full screen app.
If you get a “Tetris” (four line clear at once) a secret gift button appears, but it’s just a link to my book, because everything I do is soulless cash grab.
I’m lazy, and built this game sitting on the couch on my phone using a mix of rosebud.ai and ChatGPT. I also had to get in my laptop to do performance optimizations manually, that part sucked, it was like real work. But otherwise, vibe-coding is fun.
This game is made specifically for me and how I like to play, and I’m glad others enjoyed it!
reply