game of tetris
command runs display-based game which
must be played on a CRT terminal. The object is to fit the shapes together
forming complete rows, which then vanish. When the shapes fill up to the top,
the game ends. You can optionally select a level of play, or custom-select
The default level of play is 2.
The default control keys are as follows:
- move left
- rotate 1/4 turn counterclockwise
- move right
The options are as follows:
- The default control keys can be changed using the
-k option. The
keys argument must have the six keys in
order, and, remember to quote any space or tab characters from the shell.
tetris -l 2 -k 'jkl pq'
will play the default games, i.e. level 2 and with the default control keys.
The current key settings are displayed at the bottom of the screen during
- Select a level of play.
- Display the top scores.
- Switch on previewing of the shape that will appear
At the start of the game, a shape will appear at the top of the screen, falling
one square at a time. The speed at which it falls is determined directly by
the level: if you select level 2, the blocks will fall twice per second; at
level 9, they fall 9 times per second. (As the game goes on, things speed up,
no matter what your initial selection.) When this shape “touches
down” on the bottom of the field, another will appear at the top.
You can move shapes to the left or right, rotate them counterclockwise, or drop
them to the bottom by pressing the appropriate keys. As you fit them together,
completed horizontal rows vanish, and any blocks above fall down to fill in.
When the blocks stack up to the top of the screen, the game is over.
You get one point for every block you fit into the stack, and one point for
every space a block falls when you hit the drop key. (Dropping the blocks is
therefore a good way to increase your score.) Your total score is the product
of the level of play and your accumulated points -- 200 points on level 3
gives you a score of 600. Each player gets at most one entry on any level, for
a total of nine scores in the high scores file. Players who no longer have
accounts are limited to one score. Also, scores over 5 years old are expired.
The exception to these conditions is that the highest score on a given level
kept, so that following generations can
pay homage to those who have wasted serious amounts of time.
The score list is produced at the end of the game. The printout includes each
player's overall ranking, name, score, and how many points were scored on what
level. Scores which are the highest on a given level are marked with asterisks
- high score file
The higher levels are unplayable without a fast terminal connection.
Adapted from a 1989 International Obfuscated C Code Contest winner by Chris
Torek and Darren F. Provine.
Manual adapted from the original entry written by Nancy L. Tinkham and Darren F.
Code for previewing next shape added by Hubert Feyrer in 1999.