
Tetris - berkaay
https://www.colinfahey.com/tetris/tetris.html
======
jlblatt
Man, has any game been implemented more times than Tetris? It was always one
of those things I wanted to do and finally got around to hacking together a
javascript version of it a few years ago:

[http://cortexture.net/tetris/](http://cortexture.net/tetris/)

I would love to add multiplayer to in someday...

Also, if you haven't read the Kotaku review of "Tetris" (the game in general,
not any specific release/platform), it is not only profound but hilarious:
[https://kotaku.com/tetris-the-kotaku-
review-1718328217](https://kotaku.com/tetris-the-kotaku-review-1718328217)

> The best-known and best-loved video game ... is not a Skinner box of rewards
> for players but a bleak encounter with futility ... Tetris ends with certain
> death. It is a jigsaw puzzle that must be assembled on deadline, yet never
> can be ... The enemy in Tetris is not some identifiable villain ... but a
> faceless, ceaseless, reasonless force that threatens constantly to overwhelm
> you, a churning production of blocks against which your only defense is a
> repetitive, meaningless sorting. It is bureaucracy in pure form, busywork
> with no aim or end, impossible to avoid or escape. And the game’s final
> insult is that it annihilates free will. Despite its obvious futility,
> somehow we can’t make ourselves stop rotating blocks. Tetris, like all the
> stupid games it spawned, forces us to choose to punish ourselves.

~~~
francislavoie
I love your version!

Just some feedback:

\- You need to add a bit more delay initially on holding left/right before
moving a second time. It's too often that I held down the key just a bit too
long and it moved over two spaces when I only wanted it to move once, screwing
me over. And it doesn't feel like my fault because that's not how most
implementations behave.

\- The spin logic while touching the stack feels wrong. There's really not
enough wiggle room there IMO.

\- When holding soft drop, as soon as it touches the stack, it locks. It
should have some delay before locking unless hard drop is hit to be able to
move a piece over. Too often I just hold it down to get a piece to shift it
into a corner and it locks on me before I can move it.

\- Get rid of that alert at page load please. Especially if you require F5 to
play a new round.

~~~
jlblatt
> $(document).ready(function(){ if('ontouchstart' in document.documentElement)
> alert("..."); });

This worked in 2012 I swear! Oh the shame now however :'(

Thank you! The timing of EVERYTHING was by far the hardest part, as evidenced
by your comments, there's something intrinsically familiar about the Tetris
(or Breakout or Galaga or etc...) version you are used to. I modeled this one
to be closest to the first I played, the 80s GameBoy version.

That said- I've noticed these myself in some form or another. 2 & 3 are
related- I need to delay more as the block sits atop a collision. 1 I thought
was off but just couldn't justify the time to prove it.

Thanks for the feedback!

~~~
francislavoie
The GameBoy one was basically all I played as a kid. So much fun. But I'm also
kinda spoiled by having played Tetris Effect these past few weeks on PSVR,
which has all the modern rules and features.

------
temetnosce
The rabbit hole of Tetris goes pretty deep and most people who implement their
own version of Tetris don't realize that there are modern rules and
requirements for how the Tetrimino blocks get previewed in the next window,
drop, move, lock, rotate, and collide when rotating.

The modern system/rule for rotation and collision is called the Super Rotation
System which was made by the Tetris Company. This allows for techniques such
as T-Spins in which a T Tetrimino (the one shaped like a T) can be fit into
spaces that wouldn't normally fit in which result in extra points. Without
these rules or requirements implemented, your game cannot be officially
licensed by the Tetris Company and get the Tetris branding.

In "Tetris: The Grand Master 3 - Terror Instinct" (the one with invisible
blocks at the credit screen) had two modes, classic and world. World uses
modern rules which is considered much easier with the Tetris Company rules as
mentioned above.

~~~
stormbrew
Sadly there'll probably never be a tgm4 because TTC has done the allegedly
impossible and successfully copyrighted a game concept so that it's not just
"this is what modern Tetris is usually like" but "this is the only kind of
Tetris that is allowed to exist".

------
rpearl
Nowadays, usually tetris random is actually done by "randomly shuffle the bag
of 7 pieces, then deal them out", which isn't the same as randomly selecting a
piece.

With that, and the hold functionality (also not around in this article, or at
least not discussed) you can play indefinitely without any random chance,
modulo reaction time.

[http://tetris.wikia.com/wiki/Playing_forever](http://tetris.wikia.com/wiki/Playing_forever)

------
cdubzzz
Always love to read about Tetris! One of my favorite projects ever was over a
decade ago working on the website and server-side functionality for the
networked multiplayer OS X Tetris clone Quinn[0].

[0]
[https://web.archive.org/web/20110805131134/http://www.simonh...](https://web.archive.org/web/20110805131134/http://www.simonhaertel.de/quinn)

~~~
buzzert
I played Quinn _obsessively_ when I was younger! I loved competing with my
brother over the LAN too. Thanks for your work on this project!

------
amenghra
Hatetetris
([https://qntm.org/files/hatetris/hatetris.html](https://qntm.org/files/hatetris/hatetris.html))
is a fun(?) variation where you only get bad pieces.

------
Reedx
Nice! That was surprisingly detailed.

For documentary fans, this follows some of the best Tetris players in the
world: [http://watch.ecstasyoforder.com/](http://watch.ecstasyoforder.com/)

Interesting to see how they play and practice, the terminology ("drought"),
etc.

------
garaetjjte
To play Tetris via telnet with VT100-like terminal, connect to milek7.pl.

It is also playable on IPv6 traceroute, though controls are inconvenient:
[https://milek7.pl/tracehack/](https://milek7.pl/tracehack/)

------
taco_emoji
Has anyone else ever played "New Tetris" for N64 [0]? The major gameplay
difference was that you could make large 4x4 squares made up of four pieces -
gold if the 4x4 was made of all the same piece, silver if it was
heterogeneous. Then you'd get 4 extra points for clearing a line that crossed
a silver 4x4 and 10 extra points for a gold one (IIRC). And then there were
bonuses if you managed to clear 4 lines containing one (or two!) complete 4x4.

That plus competitive multiplayer meant you were incentivized to stack things
uncomfortably high while you waited for the right pieces to complete your gold
4x4's, and THEN clear lines containing the 4x4's.

[0]
[https://en.wikipedia.org/wiki/The_New_Tetris](https://en.wikipedia.org/wiki/The_New_Tetris)

~~~
Twirrim
I wonder if that's a false incentive. Slow but steady wins the race?

------
demircancelebi
> 5.8 Standard Tetris "lines completed" T: 2

Some variations include T-spin and allow T-shapes to rotate in place and allow
clearing 3 rows simultaneously, which in my humble opinion, make the game a
bit more fun.

~~~
dragontamer
Not "some variation", but "THE variation", SRS Tetris. (Super-rotation
system).

Tetris is owned by the Tetris Corporation, and SRS Tetris is their standards
applied to the game. The fact that SRS Tetris is missing from this entire page
is... a BIG red-flag to me.

SRS Tetris is the style used in official Tetris Games sponsored by the Tetris
Company: Tetris Friends, Tetris Ultimate, Puyo Puyo Tetris, and "The Tetris
Effect".

~~~
trevyn
Who owns the Tetris Corporation?

~~~
bluntfang
seriously, you could've googled it.
[https://en.wikipedia.org/wiki/The_Tetris_Company](https://en.wikipedia.org/wiki/The_Tetris_Company)

------
sn41
I want to implement an "Evil Tetris" which somehow figures out the least
favourable piece at any given time, and deals it out next. I have a feeling
that classic Tetris is already doing it..

~~~
rangibaby
[https://qntm.org/hatetris](https://qntm.org/hatetris)

~~~
avian
Also bastet

[http://fph.altervista.org/prog/bastet.html](http://fph.altervista.org/prog/bastet.html)

------
hoytech
Didn't see the most addictive variant mentioned in the history:
[https://en.wikipedia.org/wiki/TetriNET](https://en.wikipedia.org/wiki/TetriNET)

Here's a remake you can play in your browser built by some friends of mine:
[http://blockbattle.net/](http://blockbattle.net/)

~~~
neotek
Holy shit, that's a blast from the past! I must have ploughed hundreds of
hours into TetriNET back in the day.

It's been so long that I can barely remember how any of it worked, but IIRC it
had some sort of scripting language or config file that would allow you to
modify game parameters on the client side, so you could give yourself an
advantage by binding a key that would issue you a particular special block, or
ensure that you were never automatically assigned a negative special block,
and so on.

Now to see if I can get it working in 2018...

------
k255
The best tetris experience is in the old Dos Navigator after pressing alt+f9
with its clever scoring:
[https://archive.org/details/DOSNavigator_1020](https://archive.org/details/DOSNavigator_1020)

which is actualy open sourced at: [http://www.dnosp.com](http://www.dnosp.com)

------
dragontamer
This blogpost is a huge undertaking, but it is incomplete without a discussion
of official "Tetris Company" Guidelines, the Bag system, and the SRS Rotation
System.

For details on the official Tetris specifications, see fan wikis such as:

* [http://tetris.wikia.com/wiki/Tetris_Guideline](http://tetris.wikia.com/wiki/Tetris_Guideline) * [https://harddrop.com/wiki/Tetris_Guideline](https://harddrop.com/wiki/Tetris_Guideline)

The official Guidelines set consistent colors on the pieces, various mechanics
and details about where and how pieces rotate, as well as "bonus points" for
TSpins, TSpin Mini, Neo TSpins, B2B rules, and more.

Not all Tetris games follow the guidelines (Tetris Grand Master is the most
popular non-guideline game). But the vast majority of official Tetris games
follow the guidelines.

~~~
defertoreptar
Not exactly "incomplete." The core of the article was written before the
guideline was formally made and enforced on licencees. This is why the author
went to such lengths in designing and documenting a standardized version. In
fact, it's funny you should mention it since The Tetris Company actually
reached out to this article's author for help in designing the guideline
(unfortunately it didn't pan out).

~~~
dragontamer
I'm not sure if the dates line up with your story.

Tetris Guidelines started with Tetris Worlds (2001). While the parent article
makes numerous references to 2003 or later (the code says 2007, some various
Perl bits are 2005, etc. etc.)

Fortunately, the article is never wrong per se. It is clearly written that
"Standard Tetris" is the name that the article gives to the IBM PC version of
Tetris (1986). Its just odd to me that it has references to all sorts of 2003,
2005, and 2007 stuff without mentioning SRS or Guidelines.

~~~
defertoreptar
You're right that Tetris Worlds came out in 2001, and was the first instance
of the guideline we know today. I was referring to the bit in article here:

> Later in 2003, I received a message from Henk Rogers, inviting me to Hawaii
> to meet him and Alexey Pajitnov to talk about establishing some sort of
> standard for Tetris, for the purposes of having Tetris tournaments.

What's fair to say, though, is that although there's technically overlap on
the timeline, he would've most certainly been more familiar with the myriad of
Tetris games that predated the guideline. Tetris Worlds came out two years
before his article, and at that point, nobody really even knew there was a
guideline.

------
cachvico
Here's a couple of 3D top-down ones:

Blockout:
[https://en.wikipedia.org/wiki/Blockout](https://en.wikipedia.org/wiki/Blockout)

Welltris:
[https://en.wikipedia.org/wiki/Welltris](https://en.wikipedia.org/wiki/Welltris)

~~~
SyneRyder
I came here to mention Welltris too, which I was surprised wasn't mentioned in
the 3D section as it was an official Tetris sequel by the original developer.
There are lots of screenshots of it on different platforms (mostly 8-bit)
here:

[https://www.mobygames.com/game/welltris/screenshots](https://www.mobygames.com/game/welltris/screenshots)

------
joshschreuder
It's well worth watching John Linneman from Digital Foundry's retrospective on
Tetris. Goes through from the very old to the newest Tetris Effect game.

[https://www.youtube.com/watch?v=cUeaanfiXmo](https://www.youtube.com/watch?v=cUeaanfiXmo)

------
wernsey
Jimmy Maher, aka the Digital Antiquarian, wrote a fascinating series of
articles about the history of Tetris last year.

A lot of it sounds like a cold war spy story, and I highly recommend it.

I link to part [3], because parts 1 and 2 has an introduction of how Soviet
Russia saw cybernetics. Later parts explain how Atari ended with the rights
for home computers and Nintendo for consoles and the schemes and skulduggery
that followed.

[3] [https://www.filfre.net/2017/06/a-tale-of-the-mirror-world-
pa...](https://www.filfre.net/2017/06/a-tale-of-the-mirror-world-
part-3-a-game-of-falling-shapes/)

------
unique-template
For a more detailed history, Gaming Historian did a great video earlier this
year:
[https://www.youtube.com/watch?v=_fQtxKmgJC8](https://www.youtube.com/watch?v=_fQtxKmgJC8)

------
random878
Coincidentally, I happen to be reading a book on technology addiction and just
finished a chapter on Tetris [1].

As soon as I opened this link I started to whistle the music from Tetris
(GameBoy of course). When I spotted Steve Wozniak I remember seeing a video of
him playing Tetris obsessively on a GameBoy Light (or maybe a Color). I
instinctively went to eBay.

Tetris really is the crack cocaine of video games!

[1]
[http://adamalterauthor.com/irresistible/](http://adamalterauthor.com/irresistible/)

------
gunn
I made a minimal Tetris game in javascript. If someone wants to make their own
version, it could be a good base for it.

The source code is at
[https://github.com/gunn/tetris/](https://github.com/gunn/tetris/)

And you can try playing it at
[http://wolandbros.com/tetris/](http://wolandbros.com/tetris/)

------
robin_reala
I’ve been playing quite a bit of Mizuguchi’s new The Tetris Effect recently.
There was an interesting YouTube video recently where they tried it with a
Tetris master who did noticeably better in VR than on a screen. In the end the
best guess was that the increased FPS and lowered response times were really
helping.

~~~
lhl
For those interested (but too lazy to look) here's the video:
[https://www.youtube.com/watch?v=7T7mg6JZZzg](https://www.youtube.com/watch?v=7T7mg6JZZzg)

And a Pt 2 followup:
[https://www.youtube.com/watch?v=0j_fp5L8Si8](https://www.youtube.com/watch?v=0j_fp5L8Si8)

Very entertaining and well worth watching even if you're not a Tetris
superfan.

~~~
robin_reala
Thanks! Was on mobile when I commented and forgot to come back to add the
links.

------
zem
the original 3d tetris was "blockout"
[[https://en.wikipedia.org/wiki/Blockout](https://en.wikipedia.org/wiki/Blockout)],
which i spent way too much time playing back in high school. surprised it
didn't get a mention.

------
bitxbitxbitcoin
Steve Wozniak looks like he's having so much fun in that picture. I wonder
what the Tetris effect[0] looks like after playing on a building?

[0]
[https://en.wikipedia.org/wiki/Tetris_effect](https://en.wikipedia.org/wiki/Tetris_effect)

------
empressplay
Tetris for Applesoft BASIC: [https://paleotronic.com/2018/06/26/tetris-for-
applesoft-basi...](https://paleotronic.com/2018/06/26/tetris-for-applesoft-
basic/)

------
richardw
Twintris on the Amiga:

[https://m.youtube.com/watch?v=VaRyWcd6me4](https://m.youtube.com/watch?v=VaRyWcd6me4)

So many hours. We'd battle many nights. Going to sleep still fitting blocks in
my head.

------
momentmaker
What a coincidence. Tetris reminded me of life in a sense.

[https://seekingharmoni.com/your-life-as-a-tetris-
game/](https://seekingharmoni.com/your-life-as-a-tetris-game/)

------
dustfinger
I am surprised that the site does not mention the From Nand To Tetris course
[1] and philosophy.

[1] [https://www.nand2tetris.org/](https://www.nand2tetris.org/)

~~~
uzzabid
The first thing that clicked in my mind.

------
tromp
The Tetris IOCCC entry since moved to
[http://tromp.github.io/tetris.html](http://tromp.github.io/tetris.html)

------
ralph0
In Jackrabbit, the very cool retro-dystopian flick, scavenged (but potentially
valuable) hardware is referred to as "tetris." Nice touch I thought...

------
sys_64738
You can run tetris within Emacs via ESC-X tetris

------
ArrayList
I just wanted to say that the best puzzle game ever is Kirby's Avalanche for
the SNES.

------
Jernik
It seems as though most of the links in the examples of other sorts of tetris
are broken

------
nottorp
This isn't complete without a reference to Hell Tetris:
[https://www.xkcd.com/724/](https://www.xkcd.com/724/)

I found an implementation on kongregate, but it requires flash:
[https://www.kongregate.com/games/banthar/hell-
tetris](https://www.kongregate.com/games/banthar/hell-tetris)

