Another Tetris clone, I know :P
I managed to squeeze in an extra mode, take a look if you want!
Why are you reading this, it's Tetris, you probably already know how it works
Anyways, this clone is guideline-compliant in large parts (except where the guideline is boring or confusing to me), including Standard Rotation System and kicks. It has a steep difficulty curve, and a lot of options to adjust gameplay, animations, or Tetromino sprites (I have 16 now!).
I implemented 9 different modes, and up to 3 highscores are automatically saved per mode (options are also automatically saved btw)
If that description was too dry and boring (writing it wasn't much fun either, so I understand you), it also has lasers and poorly drawn donuts, what more could you want from a game?
Thanks to @Actually_Ed and @DavidMazarro for some great ideas!
Controls:
Modes:
Screenshots:
Changelog
Old versions
Any feedback and recommendations welcome! <3
As a huge Tetris fan, this has been my favorite Pico-8 tetris clone so far! It's got a whole bunch of modes and options that I love. I think I see a bunch of TGM influences, too. :p
Here are my recommendations:
When locking hard drop is turned off, let down be the lock button instead.
In invisible mode, show the playfield in all its holey glory when the game is over.
Make line clears a bit more flashy! Add some particle effects or something, have fun with it :p
Sometimes I think up is the rotate button when it's actually hard-drop!
Amazing Tetris clone, has everything people want in a classic Tetris game (and some, with the extra sprites). :)
Also, "relaxing game of Tetris" can be an oxymoron sometimes, can't it?
Thanks, glad y'all like it :D
@Actually_Ed great recommendations!
So what you're saying is, if hard drop doesn't lock, make soft drop lock? (if the Tetromino is on the floor ofc)
Also I had big plans with animation, like line clears, screen fades or shakes, a prettier menu, but I'm close to hitting both compressed size and token limits, I don't know how much more I can implement and what to give up first :/
WOW! This is seriously one of the best Tetris versions I've ever seen, no joke. I specially love the animations you added in 0.9.5, it makes it so satisfying to play. The only thing I miss from other Tetris versions is the ability to save a tetrimino for later, but I understand that it's a PICO-8 limitation that you only have two buttons.
Did you base your animations in some resource out there, or did you come up with them on your own?
@DavidMazarro thank you! I also noticed I like it so much more now, even though core gameplay hasn't changed a bit - fascinating what a few simple animations can do, right?
About coming up with them on my own - depends on what you mean. Some were inspired by other games, though I didn't closely copy any one, some I just thought "Hey what if I did this thing, how would that look, lets try". Then I just enabled all at once and realized how well the swoosh and the crumble animations fit together, it looks like a Tetromino-seeking laser now :D
Also, you can actually do that, you need to press both buttons at once (that is what "hold" in the top left corner means). I guess I'll put a small hint in the game, thanks for pointing that out!
@Vanessa Ohh, I see! Then this is pretty much perfect!
Some suggestion I thought of: it would be cool to have some background pictures for the play area where tetriminos fall. Though maybe it would be better to prioritise other things, knowing that you're already reaching the token limit.
@DavidMazarro A still background would be doable, it would primarily take sprite/map space and a few tokens for the map() call, I'm just not sure if I could come up with something fitting (although that's what kept me from trying animations so long and they turned out fine)
The other thing is that I think backgrounds might be distracting for some people, yet I don't have the tokens left for an animations/backgrounds menu :/
Perhaps I'll just try and see how it turns out, thanks for the suggestion!
EDIT: ok so this is probably not what you had in mind, but I just tried putting in a grid (along with new ghost colors) and this is what it looks like:
@Vanessa Yeah, once again when I was thinking of a background, I had in mind something with dim colors, but I didn't consider the restricted color palette of the PICO-8.
I think the grid is cool, maybe you should allow in the options to turn it on/off, but I definitely like it :)
Wow, this is much more eye-candy and features than my Tetris clone! I think I can learn how to do proper animations here, too. Thanks for the great cart!
@DavidMazarro ok done, you can now choose from 8 different grid styles (0 being blank)
@bob1996w Thanks! Feel free to take a look and ask me if anything is unclear :)
Btw, I've played your tetris before, thats where I got the idea to offer several sprites for the different types of blocks, so thanks for your cart too! <3
Love the new changes! Thanks for doing the soft-drop-lock thing, that's personally my favorite way to play. The options sticking around is nice, too! I also think the new difficulty curve on gravity is much better. I see you're reeeeally squeezing those tokens, so I don't really know what I can suggest without turning your code into an unreadable mess of optimizations :p
This is absolutely incredible. Between this and tetramini deffect we've got it all. Thanks so much for this!
very good tetris clone, lvl 5 , 55 to go, PANIC... failed.....
Amazing Tetris port. Very configurable and easy to play. I see you like The GrandMaster?
I'm really not terribly fond of Tetris as while it's a puzzle, it's an action puzzle and I'm not very good at those.
But this cart has a feature sorely lacking in most, and that is to get a preview of where your block will land giving you a chance to rotate and position it best for a match. Makes it a lot easier for me to think about what to do next.
Nicely done ! Star for you.
Brilliant version! Love all the options. Additional joypad control options would be appreciated! :)
this is undoubtedly my favourite pico-8 game
everything is great, the sprites are running very smooth, the hold function works perfectly, you can start playing in seconds. Well Done, i hope to see more games like this.
it crashed somewhere at 17 lines in marathon but still.
Nice. feels very authentic, although I got a Runtime Error about 3/4 of the way through Marathon, not sure why... I wish I wrote down the error code.
(I just like to think that I played so well that the game couldn't handle it. lol)
@Custardly23 I've been encountering the same error, except it seems to occur every time I finish a finishable mode. I assume it has to do with high score saving.
@Vanessa, can you examine this more closely? It's the only flaw in this otherwise perfect game.
@JWinslow23 I have the same issue as well. Kinda sucks because it ruins the focus and smoothness of the game. Other than that, it's pretty great!
Like @Custardly23 and @JWinslow23, I got a runtime error before finishing the 'marathon' and 'garbage' modes, here is the error code:
Otherwise, good job on this port! I really liked the combo mode and the number of options available.
I could be playing all my life if i didn´t lose all the time
This game is great, thanks for sharing
Really, really clever!
I kinda want music in the game tho, maybe we could team up or something.
I also broke the game with my ninja Tetris skills :-)
But also, wow, there's some seriously high production values and attention to detail going on here.
And I've only tried marathon so far.
Great version of tetris, but found a bug:
I figured out how to fix the crash upon clearing certain modes!
On code tab 6, there's a function called INV_SCORES. It gets called when a mode is cleared to record high scores. It takes every value in a list and multiplies it by -1.
For some reason, the RETURN S line is commented out.
The crash can be fixed by uncommenting this line.
That’s a fantastic version of Tetris! Just wanted to look at some of the games before starting to work on my own pico-8 project but ended up playing this for hours!
@MarkGamed7794 Thanks for the crash fix!
Game crashed as soon as I cleared a line.
Blocks were going fast, so I think I beat the game?
Very nice version and plays very well. Big thumbs up from me.
Great game! However I think I might have maxed the game out as it crashed as I was playing https://imgur.com/a/yLMhIoQ
Really impressed with this! I like a Tetris game that has high enough difficulty options to make me sweat.
I want to implement TGM-style top layer flash, so I'm playing Token Golf - I'm going through your code and looking for ways to save tokens, see what else can get squeezed in here.
With help from a friend, I've squeezed some 200-ish tokens out, mostly via:
- the floor division operator, backslash
- flr(rnd(x))+1 became a function
- removing unnecessary parentheses, rearranging some expressions to make parentheses unnecessary
...and some more elaborate rearrangements when I noticed an opportunity.
there are certainly more opportunities here, but there's now more headroom to develop in. Wanted to share this in case the original author - or others! - wanted more space to add complication with.
No new behaviors yet, this is all golfing.
this is cool, you can see the next 5 or so turns on the side for very precise calculations
hey! i'm kistaro's friend. reduced it by like 400 more tokens. the most significant gains came from greatly simplifying the DAS code, rewriting the kick code (and fixing a bunch of bugs in the process) and deleting a bunch of stuff that wasn't used. cheers, this game rocks!!
I have spent all the tokens we reclaimed - and many more, I deleted more dead code and made increasingly aggressive token optimizations to get here - to implement a mode inspired by Arika's "Tetris The Grand Master" series. It has no credits roll challenge, but it does have a TGM-style level system, grading system, and a substantial increase in core game difficulty by using step reset rather than move reset (just moving a piece does not extend the lock timer, you must move it down to a row deeper than the piece has been in before) and preventing floor kicks from popping the piece all the way back up in the air (my algorithm has weird consequences if you carefully climb up a pyramid, run to the wall, and kick it - the piece plummets - but this seems like a very fringe scenario). It also uses a 3-bag randomizer rather than a 1-bag randomizer, so floods and droughts are much worse.
Try "Grandmaster" mode to check it out!
Additionally, does anyone here know a way to reach the original developer? She seems not to have been here for years. I'd love to thank her for her work, and show her what we did - and also give her a copy of one of the versions where we reduced the token count a bunch, since I know she wanted to implement her own additional modes.
This cartridge is very full, and I don't see a way to do a lot more with it without removing things. So, if I want to keep hacking on this, I think I'll copy this to a new PicoTetris cart that always uses the Grandmaster-style rules (so I can delete the logic specific to the standard rules) and removes basically all the "normal" modes - that might free up enough space for Shirase mode to have some surprises.
I wish there was a setting called “Pro controls” which changes up the controls a bit. Left, Right, and Down stay as normal, but the up button will rotate clockwise and a will be used to rotate counterclockwise. The hard drop button will be Space and c is used for hold. (I called it pro controls because the controls will be more familiarised to pros.)
there is a gravity overflow on infinite mode somewhere around level 10. the gravity resets back to slow and there is no ghost piece.
[Please log in to post a comment]