"For people who enjoy swearing at their computer, Bastet (short for Bastard Tetris) is an attractive alternative to Microsoft Word."
(taken from http://hublog.hubmed.org)
Have you ever thought that Tetris is evil because it never sends you that straight "I" brick you need to clear four rows? Well, Tetris(R) probably is not so malevolent, but Bastet certainly is. >:->
Bastet stands for "bastard tetris", and is a simple ncurses-based Tetris(R) clone for Linux. Instead of choosing the next block randomly, this fiendish program uses a special algorithm to give you the worst possible brick. Playing Bastet can be a very frustrating experience! *
( *: bonus points for presenting it to your friends as "just another Tetris clone")
Further information is in the README file inside the package, so go grab it now.
For information, bugs, feature requests, and highscores you can send me an e-mail. Due to popular request, a short description of how the algorithm works is now on-line.
In 2010, Bastet has been discussed in the xkcd forum in the discussion of a comic with a similar theme. If you do not know xkcd yet, check it out, it's awesome.
On April 2005, Slashdot has published an article about Bastet (0.41), which makes me very proud of my creature :-)
Go read the comments, as usual they are the best part of Slashdot.
2009, version 0.43: complete code rewrite. As I go on trying to grok C++, algorithms and data
structures, and as I started to understand more of Peter's code, I found
it useful to rewrite all this stuff from scratch. So this new version is not based on Petris anymore.
This should solve some issues, but probably introduce new ones, as it is a lot less tested. Therefore this
version needs a lot of playtesting and bug-hunting.
The algorithm has been split into two, one with the next block preview (normal)
and one without (harder).
New and more sophisticated techniques are now used to write the block-choosing
algorithms, which are not fooled as easily as before.
- version 0.41: new block-choosing algorithm.
version 0.37: first public release.
- Debian/Ubuntu: Bastet is included in the main archive, just type
sudo aptitude install bastet. Thanks to Debian maintainer David Moreno Garza for packaging it and including it into the repository.
- 0.41 RPM package for Fedora Core 3, thanks to Jan Kasprzak.
If you don't think it is too frustrating to run both Windows and Bastet at the same time...
Unsorted patches and material
A patch for getting Bastet 0.41 to compile under Mac OS X. Thanks to Lawrence Gold (who sent me this patch), Chris Clepper, Saad Mahamood and Tim Douglas for reporting the problem and its solution.
Another patch for 0.41, which fixes an improper use of the
select(2) call, submitted from Rudolf Polzer
Abandoned Bricks, a nice SDL tetris clone by Milan Babuskov, features a "Bastard mode" based on Bastet.
Thanks to everyone who mailed me about bugs in Bastet, I hope the next version will fix them all (and be much more bastard than you can even imagine
Version 0.43 was published after a long hiatus, due to me working on other projects [including graduating ;-) ]. If I get enough feedback from my (real-life) friends, who already spent a lot of time on 0.37 and 0.41, I could go on. Some bugfixes will probably be needed soon.