I Played Every Classic BSD Game. Are They Still Fun Today?
The Linux terminal is well-known for its productivity tools for savvy users, but it also offers ways to be unproductive. You can do fun things as well as programming and shell scripting. You can play games in the terminal. One collection of games, BSD games, is borrowed from games that were popular on one of Linux’s ancestors, BSD. These text-based games were originally developed in the late 1970s and 1980s.
You can still play many of them on modern Linux systems. Everyone needs to take a break from running commands and pipelines once in a while.
While this article covers BSD games, you don’t have to have BSD system. Many Linux systems have this package. On Ubuntu/Debian, it’s called “bsdgames.” To install it, type:
sudo apt install bsdgames
If you’re using another distro, try searching for names like “bsdgames” or “bsd-games” in your package manager. The package comes with lots of games and things that I can only call “not-quite-games.” I tried them out to see how well they hold up today.
1 snake
If you ever used a cellphone back in the ’90s, this game might feel familiar to you. It’s not exactly the same as the “snake” game you might have played on those old phones (which was itself a clone of a game from the 1970s). Instead of playing the snake eating various things, you play a person trying to elude the ASCII art snake while collecting money.
You move around with the HJKL keys, similar to Vi. The gameplay is turn-based, so you have time to contemplate your next move. You can get a hint about where you might want to go. You can warp to a random place on the screen, but you’ll lose some money if you do.
2 sail
This game is surprisingly complex for its era. It’s based on an Avalon Hill tabletop game, and it aims to be a realistic simulation of historical nautical battles. The manual page is worth reading for its exposition of historical detail.
Due to time constraints, I was unable to dig too deeply into this, but it might make for a fun weekend. This games has a surprising amount of nautical terms. It’s certainly not a casual game. Things like this make me recognize the ingenuity that went into BSD, even in games.
Related
What’s the Difference Between Linux and BSD?
Both Linux and the BSDs are free and open-source, Unix-like operating systems.
This game challenged my assumption of these games as casual “coffee break” games.
3 trek
This is an implementation of a classic Star Trek game that was popular on mainframes around the time BSD was getting started. You can warp around the universe and blow up Klingons. This was obviously developed before the later installments in the Star Trek series of films and TV shows.
4 robots
robots is a fun ASCII-based game. You play a human who’s being pursued by the titular robots. The justification given is that the robots are just evil, according to the manual page. That’s as much of a plot as you get in these games. You can elude the robots by having them crash into each other and into the debris that results from the collisions. You can also teleport to another part of the map. It’s like a turn-based version of Robotron 2084.
You can move using the same keys to move in the Vi or Vim editors, which isn’t surprising as BSD came out of UC Berkeley, where both the games and Vi were invented. One of the game’s developers was Ken Arnold, who created the original Rogue, which is the ancestor of NetHack and other “roguelike” games. As with that classic RPG, this game seems to be a showcase for CRT terminals, which were still pretty new when it was first written.
5 hack
Speaking of “roguelikes,” hack is one such game. The game was largely inspired by the original Rogue. It’s a classic dungeon crawler that’s procedurally-generated, so every playthrough is different. You search for the Amulet of Yendor while having the ability to play different character classes. This was hack’s original claim to flame.
If the setup makes you think of NetHack, you’re right. This is actually an early version of that game. While this version is fun, it’s obviously still rough around the edges if you’ve played later versions of NetHack. The developers even admit that it’s full of bugs in the manual page (the manuals are just as fun to read as playing the games with this collection). You’re probably better off installing a modern version of NetHack on your system if you want to crawl through the dungeon ASCII-style.
6 atc
Ever thought about trying to find a less stressful job? Maybe something more relaxing, like air traffic control? You can get a taste of what it would be like to be an air traffic controller with atc.
You can give instructions for planes to turn, climb, descend, circle, and land. You want to keep them from crashing into each other or leaving your sector of airspace illegally outside of the designated exits at the corner of the screen.
This is probably the most complicated of the BSD games set, and it’s one game I couldn’t quite get the hang of. I remember trying to play a similar game that had been ported to MS-DOS as a kid, so it seems to be yet another classic. At least, the game shows that not pursuing a career in air traffic control might have been the right one for me.
7 adventure
This is the classic Adventure game that was popular on mainframes in the 1970s. As both Adventure and BSD started around the same time, it was perhaps inevitable that a port would emerge for BSD Unix, given that both loom large in geek lore. The goal of the game is simple: you have to explore the Colossal Cave.
The game has left its mark on computer culture in other ways, such as the classic “twisty maze of passages, all alike” in the cave and the magic word “XYZZY.” For these reasons, you might want to play through it to experience an early version of what we now call a “meme.” The game codified many elements of text adventure games, such as movement by compass directions.
8 backgammon
This is a version of a classic board game. You can play against the computer or another person. Unfortunately, I don’t know how to play Backgammon. Fortunately, there’s a command called “teachgammon” which has a tutorial on how to play it.
Unfortunately, it would take a longer time to get more comfortable with Backgammon than I would have to work on this article, so I would have to leave it to another time to develop my strategy. The game is about as complex in strategy as Chess is.
9 canfield
No computer seems complete without a solitaire game, and it seems that BSD is no exception. This version is based on the classic Canfield variant of solitaire. This was a variant that was played for money in a casino, so it’s harder than the Klondike version you might have encountered in Windows.
The key difference for this version compared to other solitaire games is that it’s completely text-based. The card representations are letters or numbers mentioning the rank and suit. For example, the Queen of hearts is “Qh.” The Ace of spades is “As.”
10 cribbage
I like card games, but I don’t always have a chance to play with other people, so computerized versions are great for me. One I’ve always wanted to try is Cribbage, and there’s a BSD version. It includes instructions, but I think I’d prefer a modern graphical version for card games. At least I won’t need a Cribbage board.
11 hangman
This is a version of the classic word game “Hangman,” where you try to guess the word before the ASCII art hanged person is drawn in completely. Who knew that spelling words could be so gruesome?
12 worm
This game is closer to the one you likely played on your cellphone back in the ’90s, or at least closer than BSD’s actual snake game. In worm, you play the titular worm, and you have to eat numbers while crawling along the screen, while hopefully avoiding crashing into yourself.
13 Tetris
A terminal-based version of Tetris is included. It’s the same classic game: clear lines by slotting the falling pentominoes together.
It’s unofficial, being based on an entry in the Obfuscated C contest. Having the blocks render in the terminal was a pretty neat trick.
14 wump
This is the BSD version of the 1970s computer classic, Hunt the Wumpus. The object of the game is to hunt the Wumpus through a cave maze of 20 rooms, while avoiding the monster and falling into any pits. Worse yet, bats can carry you off to another random room in the cave.
This is a game that might seem crude by modern standards, but it’s surprisingly fun. This game has been around since the early ’70s, and it’s held up despite its lack of graphics, not even ASCII graphics. It’s just a really fun game. That’s the key to these old BSD games.
15 battlestar
This is another adventure game. The game has nothing to do with Battlestar Galactica, but you get to explore an old spaceship. The manual says that the game is more about exploration than scoring.
16 gomoku
gomoku is a game where you have to get five in a row in any direction while trying to surround your opponent. You can play against the computer or another person.
You can have the computer play the computer, though the manual says that this is more for testing. It’s still a lot of fun to watch the board fill up automatically.
17 dab
This game seems to be an unusual take on Tic-Tac-Toe, where the goal is to try to fill in the boxes on the screen before the computer or human opponent does. The computer, like in a lot of other games, seems very tough to beat.
Creating the boxes must have been quite a feat when CRT-based terminals were new, but this game probably won’t hold my interest, as there doesn’t seem to be as much strategy to it, similar to Tic-Tac-Toe.
18
Not-quite-games
The BSD games collection has a loose definition of “game.” Some of these would qualify as “utilities” rather than games. One of them is primes, which prints prime numbers up to a certain value or between values. I suppose if you really like math that could be a game.
Related
11 Ways to Do Math on the Linux Terminal
Blow through any calculation right from your terminal.
There’s also an arithmetic game, where you add and subtract numbers. That seems to be intended for younger children, as does a game of “Go Fish.”
Another program, pom, prints the phase of the moon for any budding astronomers out there. rot13 and caesar run ROT13 and Caesar ciphers on any text.
I can only describe these programs as “not-quite-games.” There still interesting and fun to play with on occasion.
A lot of these games still seem to hold up quite well in retrospect. This collection proves that you can still play some fun games without having a powerful graphics card. Or any graphics card. There’s a reason these games have stood the test of time.