Despite their seemingly simple nature, some console games for Linux are surprisingly complex and more than capable of sucking you in for hours at a time. Yes, you will need to use your imagination to fill in the blanks created by their rudimental graphics, but that’s not necessarily a bad thing.
In this article, we review and demo the top 7 games you can play on the Linux command line. Enjoy!
NetHack was first released in 1987, and the game has been in development since then (version 3.6.4 was released on 18 December 2019).
In many ways, it can be seen as the grandfather of all roguelike games, which has seen a massive surge in popularity in recent years, with titles such as FTL: Faster Than Light, The Binding of Isaac, Rogue Legacy, Crypt of the NecroDancer, or Darkest Dungeon becoming top-sellers in their category.
The gameplay revolves around exploration and survival. You start the game by creating your character, taking on a traditional fantasy role like a knight or wizard. You’re then introduced to your main objective, which is to find the Amulet of Yendor at the lowest level of the dungeon, and the rest is more or less up to you.
2. Dwarf Fortress
Dwarf Fortress is the only game on this list that’s not open source, but we think that it doesn’t deserve to be disqualified just because it doesn’t make its source code public—its influence and popularity are too great for that.
In Dwarf Fortress, you’re either in charge of a dwarven output, or you play as an adventurer in a large randomly generated world populated by distinct civilizations, thriving capitals, villages, catacombs, labyrinths, bandit camps, and much more.
Managing a dwarven output involves everything from crafting resources to trading with your neighbors to defending your output against enemies, while adventuring relies on traditional roguelike gameplay mechanics, but with far more depth than games like NetHack can offer.
3. Frotz (Zork)
Frotz isn’t a game. It’s an interpreter for Infocom games and other Z-machine games, such as Zork, one of the most popular text adventure games of all time. Unlike other text adventure games released in the 1980s, Zork could interpret fairly complex text commands (“open the door with the crystal key”), which significantly improved the gameplay and made the world feel more alive.
Zork is split into three games (Zork: The Great Underground Empire – Part I, Zork II: The Wizard of Frobozz, and Zork III: The Dungeon Master), and you can download them all for free directly from Infocom’s website.
To discover even more interesting Z-machine games, we recommend you browse the Interactive Fiction Database. Here are five games you shouldn’t miss:
- Lost Pig: A fun game with moderate difficulty where you follow an orc who must retrieve an escaped pig. The game was released in 2007, and it placed first in the 2007 Interactive Fiction Competition.
- Spider & Web: This self-published Z-machine game puts you in the role of a captured spy, and your goal is to tell a plausible story to your interrogators. However, that’s no easy feat because everything you say in the game is questioned to the last detail.
- The Witness: Created by Infocom, The Witness is a murder mystery text adventure game that takes place in a quiet suburb of Los Angeles. You play as a detective assigned to investigate a rich man named Freeman Linder, who’s afraid that his life might be in danger.
4. BSD Games
When waiting for a program to compile or for an update to download and install, it’s helpful to have a few simple games to pass the time. The BSD Games package includes a sizable collection of command-line Linux games that were originally distributed with some BSDs.
BSD Games includes adventure, arithmetic, atc, backgammon, battlestar, boggle, canfield, cribbage, dab, fish, gomoku, hack, hangman, hunt, mille, monop, phantasia, quiz, robots, sail, snake, tetris, trek, worm, and wump.
Additionally, there are several fun non-games: banner, bcd, caesar, rot13, countmail, dm, factor, morse, number, pig, pom, ppt, primes, rain, random, wargames, worms, and wtf.
To launch any package included in BSD Games, simply enter its name in the terminal and hit enter. Besides worm (which is displayed above), we also recommend phantasia (a Middle Earth-themed multi-user dungeon) and hack (the predecessor of NetHack).
5. Cataclysm: Dark Days Ahead
Set in a procedurally generated post-apocalyptic world, Cataclysm: Dark Days Ahead is a turn-based survival game where a few lucky survivors must fight to see another sunrise because zombies, killer robots, giant insects, and other deadly enemies are lurking everywhere.
The game begins in a fairly typical roguelike fashion: You wake up without your memories, and your immediate objectives include securing food, exploring your surroundings, and not getting killed in the process.
Cataclysm: Dark Days Ahead can be played either in the terminal or with a graphical tileset. In addition to Linux, it also runs on Windows, macOS, iOS, and Android.
When Italian web developer Gabriele Cirulli released 2048 in 2014, the internet instantly fell in love with its simple yet addictive gameplay. The objective is to move numbered tiles so that two tiles with the same number touch, which causes them to merge into one. You continue playing in this way until you create a tile with the number 2048, but the game lets you keep on playing even after you’ve completed its objective.
2048-cli is a recreation of the original game for the terminal. One version of the game (see the screenshot above) is rendered only using ASCII characters, but there’s also a more colorful version that uses ncurses.
The instructions on how to download and install 2048-cli are provided on its GitHub page, but you really need just two commands:
Inspired by the original coin-operated arcade video game, SSHTron is a multiplayer command-line game for Linux that plays a lot like Snake, except that there are up to four snakes on the screen, and each is controlled by a human opponent.
If you have SSH installed on your system (and you most certainly do), you can start playing just by entering the following command in the terminal:
The game is controlled with WASD or vim keybindings, and you can press Escape or Ctrl+C at any time to exit it.