/tetris

A terminal interface for Tetris

Primary LanguageHaskellOtherNOASSERTION

tetris Build Status

A terminal interface for Tetris

terminal-gif

installation

Installation on MacOS and Linux is outlined below. Windows support is questionable, but you can try to install from source.

MacOS

Installation on a Mac is simple with Homebrew:

brew install samtay/tui/tetris

Arch Linux

Arch Linux users can install from the AUR, e.g.

yay -S tetris-terminal-git # or yaourt, etc.

Snapcraft

Thanks to @thefenriswolf this is available on most Linux distributions via snapcraft:

sudo snap install tetris-thefenriswolf
alias tetris=/snap/bin/tetris-thefenriswolf.tetris # add to .bashrc or .zshrc etc.

install from source

First get stack. Then

git clone https://github.com/samtay/tetris.git
cd tetris
stack install tetris

usage

The default game is run by simply executing the tetris command. If the unicode characters look a bit wonky in your terminal, you can also run

tetris --ascii-only         # uses [] as preview cell
# or
tetris --preview-chars 'XX' # uses custom characters as preview cell

If you want to skip the level prompt, you can start the game immediately via

tetris --level n

Lastly, to see the current high score, you can run tetris --high-score. And of course, see tetris --help for help.

tips

troubleshooting

People seem to have varying levels of success with the linux binary. Please note that it is compiled dynamically and hence should not be expected to work on most distros. If you have other problems, feel free to open an issue.

roll your own

If you like games in your terminal and have an interest in functional programming, write your own! This code is built on top of brick which makes building terminal user interfaces very accessible. I also have a tutorial that can help you get started.