This page is a mirror of Tepples' nesdev forum mirror (URL TBD).
Last updated on Oct-18-2019 Download

Has anyone ever made their own Tetris clone for NES?

Has anyone ever made their own Tetris clone for NES?
by on (#32098)
Topic says it all. I'm just curious if anyone's tried doing their own Tetris and what people may have used for the randomness in the order the pieces appear in.

by on (#32099)
Tepples did it:
http://www.pineight.com/nes/

by on (#32102)
Tetramino uses a linear feedback shift register, clocked 3 times per piece (t.s::random). This gives three bits, which together make a value in [0..7]. Values 0-6 correspond directly to different pieces, while 7 uses what I call "possession arrow" logic. A separate variable determines which piece to give on a 7, and it is incremented after each use (t.s::randpiece). (Compare to alternating possession in school basketball.)

The basic design of Tetramino was hammered out in 2003, long before I learned about the more even randomizers used in more recent games.

by on (#32110)
Interesting logic. Not a bad port either.

I don't know how Nintendo did it (randomness) back in the day, but I've played the NWC1990 cart a few times and if you score a certain a amount in SMB1, you always seem to get a certain sequence of pieces in Tetris. It seems to me they had something like arrays defined with pre-determined patterns of pieces and probably had it periodically pick one of those out. I don't know how many arrays they would have had, but probably a lot to make it really feign randomness.

by on (#32112)
Quote:
It seems to me they had something like arrays defined with pre-determined patterns of pieces and probably had it periodically pick one of those out. I don't know how many arrays they would have had, but probably a lot to make it really feign randomness.

Or a limited number of random number generator seeds? That's how SimCity and others had many starting maps selectable by number, without having to store them.

by on (#35336)
Tetramino has the usual Tetris clone behavior when a any block goes off the top even off to the side, game ends. The Licensed Tetris version will not end the game quite so fast .... only when the top area is completly filled with blocks.

by on (#35338)
jason_m wrote:
Tetramino has the usual Tetris clone behavior when a any block goes off the top even off to the side, game ends.

Top out when a block is in row 21. As I understand it, Tetяis (by Atari Games/Tengen), The New Tetris, and Tetris DS Push all use this rule.

Quote:
The Licensed Tetris version will not end the game quite so fast .... only when the top area is completly filled with blocks.

Top out when entry position overlaps a block. Most recent "guideline" games use this, such as Tetris Worlds and Tetris DS standard. So do the (older) games where the piece enters inside the playfield, such as Tetris (NES), Tetris (GB), and Tetris The Grand Master.

When I developed Tetramino, I wasn't aware of the vanish zone that appears to be part of the guideline by now. Right now, the display code puts the (decimal converted) score and lines where the vanish zone should be. But if I were making Tetramino today, I would use 24 rows with the top four hidden, and the score in a separate buffer. That's what Lockjaw uses, but then Lockjaw runs on GBA hardware, which has much more video memory bandwidth than the NES PPU, and it doesn't have two playfields to update.

by on (#35342)
Now that I played it a little longer, the controls seem touchy. I screwed up quite a lot by accidently droping blocks in the wrong places, so I can't get more than aboutt 20 lines. Also blocks have dropped immediatly sometimes by dissapearing and reapearing at the bottom and not sliding. I am not sure what causes it, but mashing the buttons seems to pervoke it more frequently. Also I am playing on a nes with a Powerpak.

by on (#35351)
jason_m wrote:
Now that I played it a little longer, the controls seem touchy. I screwed up quite a lot by accidently droping blocks in the wrong places, so I can't get more than aboutt 20 lines.

Yes, the delays are short. I guess I'm more used to "fast" Tetris games like Tetris The Grand Master, which also have short delays. If you're used to slow games like Tetяis for NES, Tetris for NES, or Tetris for Game Boy, it might take a while before you stop getting misdrops on Tetramino. A lot of times, you want to put a piece one cell from the wall of the playfield, and there are efficient ways to do this.

Or do you get occasional spurious motion after clearing four lines, only on the NES and not on emulators? If so, you might be running into DPCM interference with the controller interface, which bunnyboy rediscovered. Tetramino doesn't yet take this into account.

Quote:
Also blocks have dropped immediatly sometimes by dissapearing and reapearing at the bottom and not sliding.

Did you press up on the Control Pad? In The New Tetris, Tetris The Absolute The Grand Master 2 PLUS, Tetris Worlds, Tetris DS, and Tetramino, up moves a piece all the way to the bottom.