As of 2016-02-26, there will be no more posts for this blog. s/blog/pba/
Showing posts with label ncurses. Show all posts

Its sad that 2048tty got no attentions when its easily by far the best implementation I have ever played. Just one star and nothing else except 5 author self-opened issues.

With --animate0.1

You use hjkl to play.

As you can the animations above, not only the tiles get the sliding motion which Ive seen before in at2048 but also the scoring, the just-earned points floating up. High score and progress is saved, so you can quit at anytime and continue playing later.

Even its graphics is designed, not just simply put a box around a number, but an oval-shaped tile. Not like there is anything wrong about rectangular box, but you can see who puts more thought on the graphics designs.

2048tty was created by Samuel Phillips on 2014-12-27, written in Python 3 with ncurses under the GPLv3, currently git-ed56d8e (2015-01-31, post v1.0 (2015-04-30)0.

ASCII Flappy Bird! is yet another bird trying hard to flap through tiny gaps of endless obstacles.

It has a nice title screen and sad death screen. You know the drill, just Space to fly away.

ASCII Flappy Bird! was created by Hamik Mukelyan, writen in C with ncurses for terminal size 80x24+, under the MIT License, currently git-1c56b7b (2016-01-19).

nInvaders is a Space Invader clone, was made more than a decade ago, still runs even without any updates or patches for nearly 13 years.

Actual speed as recorded

Not sure if its by design or just outdated code, you will need to defeat the invaders in less than 20 seconds, which I dont believe thats plausible. Therefore, I edited the code, watch this video from 30 mark:

  • Time dilation devide: nInvader.c:L33 s/50/10/

  • Invisible Laser Destroyer: playerReloadMissile.c:L179 s/if/while/

  • Secret spell: UUDDLRLRBA

    echo -e '\e[31;1m*** CHEAT MODE ENABLED ***\e[0m'
    echo -e '- \e[34;1mTime dilation deviced\[0m    : \e[1;32mON\e[0m'
    echo -e '- \e[34;1mInvisible Laser Destroyer\[0m: \e[1;32mUPGRADED\e[0m'


Turns out, its a 13-year-old bug, and everyone had played it without knowing it or even questioning it. Ive forked it and patched the bug, you can get the updated nInvaders. (2016-01-21T08:29:10Z)

It has one command-line option for changing difficulty level, -l 0 for NIGHTMARE level and -l 9 for the easiest setting. There is also two builtin cheats, L for one more life and W to skip the level.

nInvaders was created by Thomas Dettbarn in 2002, written in C with ncurses under the GPLv2, currently version 0.1.1 (2003-05-08).

Sudoku is a game, generator, solver, and statistics calculator. It has command-line options and well-documented manual page, plus nice UI to play.

In game, you can save or load board, request a hint which might even give you which digit to try, it can also solve the board if you have given up.

Sudoku was released in 2005-07 by Michael Kennett into public domain, continued by Peter Spiess-Knafl on 2015-02-12, written in C with ncurses, running on Windows and Unix-like, currently git-61e3f39 (2015-03-13, post v1.0.4 (2015-02-28)).

CursesBird is a simple side-scrolling game, you are the bird > and you are trying to flying through a tunnel, dont hit the wall. Well, that sounds more like a bat.

Anyway, the controls are basically Up/Down and Leff/Right to adjust speed. Also p pauses the game.

CursesBird was created on 2014-04-11, written in C with ncurses under New BSD License (3-clause), currently git-49a603c (2016-01-05).

pythrees is the clone of Threes!, which is 1+2=3, 3+3=6, 6+6=12, and so on. If you have played 2048 game, you can find the similarity, both 4x4 grid, and merging with same numbered tiles, except the first merge of Threes!

The visual design is fairly simple, only a few colors and plain ASCII, but it does tell you what the next tile will be sliding in. It doesnt keep high scores.

pythrees was created by Yuan Cao on 2015-03-01, written in Python 2 with ncurses under the MIT License, currently git-e3209a5 (2015-12-10).

Terminal_Worm is yet another clone of Snake or Nibbles. The only thing different probably is the time-limited bugs, which adds significant bonus point, but you have to eat it before it disappears.

Video for longer playing

Its title screen is nice, a snake wiggling its tail. The screen is wrapped, that is you can go through edge and come out from the other side.

Terminal_Worm was created on 2013-02-10 by Martijn Pieters, written in Python 3 with ncurses under the GPLv3, currently git-81babbc (2015-12-16, post v1.0 (2014-07-19)).

Wanderer (GitHub) is a Boulder Dash (1984) like game, originally written in K&R C now C99 for UNIX and released on Usenet in 1988. Later, it was ported to different systems, MS-DOS, Atari, Amiga, BBC Micro, and SCO-Unix. Some even in graphics mode.


To clear a level (screen) is to collect all the diamonds, stay alive, then head out through the WAYOUT.

text2048 is a clone of that popular game 2048, which will be two years next March.

After this long time, 2048 is still sliding strong, a lot of people is still cloning it, making their own versions, even more A.I. popping up every a while with new ideas and algorithms.

It was even played in 18th Computer Olympiad (2015) for the first time.

As of this clone, the only thing differs it from others is the cells, the red color on the either edge of the cells of 2 2n+1.

text2048 was created by Christian Fiedler on 2015-08-09, written in C99 with ncurses under the MIT License, currently git-7b6cf12 (2015-11-11).

CPat is a Patience suite game, including 11 solitaire games:

FreeCell, Klondike, Spider, 40 Thieves, Bakers Dozen, Scorpion, Penguin, Yukon, Strategy, Canfield, Duchess.

(Watch this video for other screens and a bit of playing)

Since its all-in-one, you can have a unified controls, its all the same way to move a card, put into foundations, and so on. It also has help and rule screens to help you understand the card game.

There is also game statistics and high scores to keep records. There is one useful command-line option, -f, to speed up auto-moves, that is when you using free cells to move a stack of cards, it will move one by one to show the movements, but the default speed is too slow. -f can be used for multiple times, for example, -fff.

When move to the foundations, #pp or P will really be helpful since it doesnt do like some implementations will automatically move to the foundations for you, such as freecell.

CPat was created by Trevor Carey-Smith on 2006-02-16 (v0.1), based on Steve Levines code, written in C with ncurses, currently version 1.2.1 (2008-09-16).

mandelbrot-viewer is a simple and interactive viewer, you can zoom in and out with + and -.

The GIF screencast is of course sped up, somehow, it looks like something has been locked and the system is tracking down the subject like in sci-fi movie.

mandelbrot-viewer is written by David Ulrich in C with ncurses under the AGPLv3, based on Ken Perlins code snippet, currently git-a3f2762 (2015-10-30).

Canfield is part of BSD Games, a Patience/Solitaire game, also a gambling game.

Canfield: Instructions, Betting, Card counting

At first few plays, I could barely get a few into the foundations, I thought even I wasnt good at Patience game, but I couldnt be that bad, could I?

Finally, I looked up on Wikipedia and the first line it reads:

[] with a very low probability of winning. According to legend, it is originally a casino game, []. In England, it is known as Demon. [some emphases mine]

Tower of Mediocrity is a tower defense game with ncurses and SDL backends.


You should play this music while reading, which is played in the game.

Click to watch whole the map played

You are in Mediocrity Central and the chatter says that some group is going to invade the Mediocrity Treasury, you job is to define while they crawling through the oddly built and hardly straight passageways through the city.

The following screenshot is of SDL backend, the bad guys are smiling devilishly, and the towers are bold-underline-strikeout icons for font styles as in word processors, WTF?

nsudoku is a Sudoku game, of course. It doesnt have any fancy display, no menus, not much stuff, just the board and numbers plus a clear help message on the left side.

nsudoku was created by Tin Benjamin Matuka in 2008, written in C with ncurses, under the MIT License, currently version 1.3 (2015-06-23).

Zombies is a Robots-like game (video), with walls and without teleports.

The design and interface are clear, everything is shown on screen. You have to trick zombies to hit the walls and that will kill them, which isnt hard since they are mindless. Once every zombie paints the wall with their mindless brains, you clear the level and move on to have more zombies.

robots is almost three or four decades old, that probably is the reason this game is conceptually simple, but yet fun to play if you need to kill time.

Zombies was created by Simon Burge in 1994, written in C with ncurses under the Simplified BSD License (2-clause), currently hg-afc398a073d4 (2015-11-18, post v1.0 (1999-06-26)).

Who needs teleportation when you get brain-crashing walls.

GNUSki is a SkiFree clone, which was made by Chris Pirih with Microsoft in 1991 for Windows and included in Best of Windows Entertainment Pack. Actually a clone of Ski for VAX/VMS, or at least, inspired by it, which in turn was inspired by Skiing (1920) for Atari 2600 console.

Click to ski longer

Using hjkl or arrow keys to play, the up and down keys are for changing speed. It only has one goal, ski as far down as you can, either to the left or to the right, just dont hit the rock.

The project is marked as inactive as of now on SourceForge, and eight years without any updates, the snow has melted, no more skiing.

GNUSki was created by Rudolf Olah on 2005-07-01 in C with ncurses under the GPLv2, currently version 0.3 (2007-05-31).

Blue Moon is a type of Patience game, its also called Gaps.

Click to watch a complete game played

This 52-card solitaire starts with the entire deck shuffled and dealt out in four rows. The aces are then moved to the left end of the layout, making 4 initial free spaces. You may move to a space only the card that matches the left neighbor in suit, and is one greater in rank. Kings are high, so no cards may be placed to their right (they create dead spaces).


The rule sounds like a lot, but you only needs four keys to play with and it doesnt take a lot of time to finish one game. It seems always solvable:

A moments reflection will show that this game cannot take more than 13 deals. A good score is 1-3 deals, 4-7 is average, 8 or more is poor.

The real skill in this game is just how many deals does it take.

Blue Moon was originally created by Tim A. Lister in C, Eric S. Raymond added ncurses on 1994-11-28 for visual user interface and color support, licensed under the Simplified BSD License (2-clause), currently git-4223982 (2015-10-17, post v2.12 (2014-05-30))

asciijump is really a tiny little fun game, that you can play alone or with friends on same computer or across network.

It has three play modes, World Cup, Training, and network games. In World Cup, it has players like Erykah Badu, Charlie Parker, Thom York, and Bjrök, all musicians that I do not understand. Ten hills to choose from, Poland, Pakistan, Ukarine, England, Tarnica, Czumulungma (Mount Everest), Finland, and Be Free!.

I always crashed when I first played, finally I realized you need to hit Enter just before landing to perform a telemark landing, whatever that really is. Not just Left and Right to adjust after the jump.

The graphics is really stunning, the hill looks nice and its snowing in background, even the players have different outfits.

asciijump was created on 2003-02-12 (v0.0.1), written by Grzegorz Moskal, Michal Moskal, and Przemek Niezobrala in C with ncurses under the GPLv2, currently version 1.0.2~beta (2010-08-27).