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

flycombat is part of Pygamii examples. You are an airplane and you shoot down enemys planes.

This is a simple game as an example for the gaming development library. You get a score on top and life as well. Several different enemty planes, so its not too bad as an example for just 287 LOC.

Pygamii was created by Carlos Maniero, written in Python 3 with readchar, termcolor, and optional Pygame for sound, under the MIT License, currently version (2015-12-23). from PyGamii is a clone of Arkanoid or Breakout. PyGamii is an engine for ASCII games, which only has less LOC at this moment.

Although its named, I dont see any power-ups falling down. Since its just an example, I shouldnt expect much from it, it doesnt have a score.

The library is small, but it uses PyGame for audio, and that probably is the reason why PyGamii named PyGamii. Its not officially supports Python 2, but I found it has no problem to run with it, just its kind of glitch in display.

PyGamii was created by Carlos Maniero, written In Python 2/3 with readchar, termcolor, and optional Pygame for audio under the MIT License, currently git-2fe2332 (2015-12-15).

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.

boom (GitHub) is

A 2-player battle game made for Ludum Dare 28 (December 2013), for the theme you only get one.

The game goes like this, two players, each has many fake mine and one possibly real mine, but you never know if you get the real real mine until the detonation of the possibly real mine.

It can be played with keyboard or Xbox 360 controllers and it has sound.

You lay as many mines as you like, and hope your opponent will come close near the possibly real mine and you detonate the mines. If its real, you win. If its not, you can still play cool since your opponent has not yet deploy the real mine and still doesnt know that is a real deal. If your opponent detonates the real mine and doesnt blow you up, then you are the winner.

Its a fun game.

boom was created on 2013-12-13 by Joseph Lansdowne, written in Python 2/3 and C with Pygame under the GPLv3, currently git-a0fb8ac (2014-01-18).

Cangkufan is a Sokoban clone with 50 puzzles by Hiroyuki Imabayashi.

The controls include mouse and keyboard, you can undo or redo, replay best pushes or steps, which are recorded. The Cangkufan is the Chinese Pinyi of the Japanese (Kanji) title, in short, the Chinese pronunciation of 倉庫番.

Cangkufan was created by Pluto Yang in 2003, written in C with GTK+2 under the GPLv2, currently version 0.2 (2010-09-17).

Unintentional Christmas Tree is a fun and small arcade action puzzle game. You just lay the same color blocks on top of each other.

It has two modes, easy and hard. In hard mode, you cant make any mistakes, e.g. red on green, or that would be game over. In easy mode, lets just say that you can break this tree really easily.

Unintentional Christmas Tree was created by Joseph Lansdowne on 2012-02-27, written in Python 2 with Pygame under New BSD License (3-clause), currently git-da562ee (2012-02-27).

The question is not red or green but left or right.

Rescue Girlies is a fork of SuperTux by a father, R. Bassett Jr., in AugustDecember, 2013, he said:

I made RG as a Christmas gift for my children. Run, jump and think your way through the campaign to save your loved ones. Make new friends, eat some cupcakes, and squish many bad guys along the way!

Watch this video for more.

You must read the story that this father tells his daughters in the video with his own voice, really telling the story, this has to be one of the best Christmas gifts you can get when you are a kid.

Rescue Girlies was forked off SuperTux 0.3.3 (2010-08-06) by R. Bassett Jr., written in C++ with SDL under the GPLv3, currently git-bd68ac8 (2015-01-21)

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).

Pipong is a simple clone of Pong game, the classic table tennis video game. It doesnt have much to offer, but it definitely is playable.

(thats a blinking cursor)

It needs a terminal size of 100x40 and two players, using ef and ok to move the paddles, but it feels more like left hand vs. right hand by the locations of the keys.

Pipong was created by Dong-jun Lim on 2015-09-18, written in C++ under the MIT License, currently git-c9a519b (2015-11-23).

GNUjump is a clone of xjump aka. FALLING TOWER, it uses SDL and has a lot of more options, it also supports multiplayer.

GNUjump 1.0.8 with wincrash theme, watch in SDLjump theme

It has much more options, you can change game settings, such as FPS and trailing effect; video, such as using OpenGL and antialiasing; and sound volumes. Beside the must-have high scores, a replay feature, so you can watch other peoples playing.

The sound effect is hilarious, not your usual sounds, but someones vocals, watch the video and you will hear those.

Here are the four themes.

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).