"The only winning move is not to play"
That game of falling blocky thingies.
Initial announcement blog post with some implementation trivia
- Free software
- Works in your terminal
- Minimal
- Written in Nim
- Crossplatform
- Compete with friends or foes by sharing a game seed
- Colors
- Optional Hold Box and Ghost piece, hard and soft drops, couple of falling speed curves.
No complicated rotation systems, no wall kicks, no music, no gui, no net usage, no telemetry, no ads, no winning.
I don't like computer games. They:
- Steal your time
- Replace meaningful activity
- Show how easy it is to manipulate a human into doing silly things
- Deceive you into thinking you're in control
- Disappoint you in the end
Tetronimia does all of the above. Nothing more. It's ideal. Did I mention you can't win?
Download a binary from the release assets or compile the game yourself.
Currently, Tetronimia is available from the AUR repository for Arch Linux and its derivative distros. Install with yay
or your favourite AUR helper, such as pakku or paru.
yay -S tetronimia
Since v0.2.0, Tetronimia supports stable Nim compiler >= 1.4.6. It has minimal dependencies: the code relies on the new official threading package for the Channel
implementation (earlier experimental implementation from the Nim's devel branch, on which we relied previously, was dropped), amazing cligen and very useful zero_functional libraries. Use choosenim
to install and manage the Nim compilation toolchain.
To install with Nim's package manager Nimble:
nimble install https://github.com/indiscipline/tetronimia
tetronimia -h
The commands above automatically downloads the latest tagged release, installs all the dependencies, and builds the binary, which should be accessible, if Nimble's bin
directory is in your PATH environment variable (it probably is).
Another option is to download the latest source manually and build with Nimble:
git clone https://github.com/indiscipline/tetronimia
cd tetronimia
nimble build
./tetronimia -h
The game has a basic set of options, available via --help
or -h
argument.
The defaults are chosen to be "perfectly balanced". If you think you're not good enough, use the Hold box (-b
, off by default). If you think otherwise, choose the nastier -s w
speed curve, turn off the Hard Drop (-D
), the Ghost (-G
) and that tiny delay on line clear (-L
). You'll suffer harder, but not for long.
Don't try to translate it from Latin, it just pretends being it.
It has Nim and that other thing inside and sounds like a disease, what's more to want.
If you know how to shave more lines off the code without golfing or know how to port it to CPS I'm all for that.
For other ideas, just open an issue.
Tetronimia is licensed under GNU General Public License version 3.0 or later;
See LICENSE.md
for full details.