January 30, 2004

Caution: this game is pathological

Author: Joe Barr

Move over, Frozen-Bubble. Thanks to an email message from one of our readers, I've found a new escape key. It's Pathological. No, really. That's the name. This game is more addictive than caffeine, more fun than an election year, and more frustrating than trying to find a real person to talk with behind the phone company's evil voice mail system. Go ahead, give it a try. You can't get hooked by playing it just once. Can you?

Actually, there is some linkage between Frozen-Bubble and Pathological. Jean-Paul Gignac, the game's creator, told me that he viewed Frozen-Bubble's "overall quality of packaging and presentation as a standard by which Pathological should be measured." That's setting the bar pretty high, but he has delivered. The original music for the game is by Matthias Le Bidan, who also did the music for Frozen-Bubble. And then there are those darned marbles.

To begin, download the appropriate tarball from SourceForge. Make sure you have both Python and Pygame installed on your system; the Pathological download page has links to downloads for both if you need them.
Decompress the tarball, enter the directory created when you do, and type pathological.py from the command line. Nothing to it, really.

How it's played

Pathological game boards center around "wheels" you can turn 90 degrees at a time by right-clicking on them. They have four slots apiece, and each slot on the wheel can hold a single marble. When all four slots on a wheel are filled with marbles of the same color, the marbles vaporize and the wheel is said to be "completed." Your task is to "complete" each wheel on the board.

The wheels are connected by paths with various kinds of filtering devices. Some allow only one-way traffic in a specific direction, some allow two-way, others are one-way but switch directions each time a marble passes over them. There are also shredders, color filters, painters, and more. Check them all out here.

The game starts when a marble is ejected from the vertical chute along the right side of the board and rolls along the path at the top. You are given a certain amount of time to finish the board and to get each individual marble off the top path into play. If either timer expires, you lose a life and have to restart the board.

Click on the image of the board below for a full-sized view.

About the game's author

John-Paul Gignac works as a senior software architect for an Internet service company in the digital photofinishing industry.
I asked John-Paul how he got involved with free software (Pathological is licensed under the GPL) and he explained, "One weekend, I got a friend of mine to install GNU/Linux on a spare partition of my
work machine, just so I could see what all the hype was about. I
couldn't believe how familiar it felt. In minutes I had exactly the
same desktop that I had grown accustomed to at University. I
immediately switched to doing all of my work under GNU/Linux, and I've
never looked back."

He also noted that "the free software model provides an avenue to inexpensively
maximize the visibility and benefit of my work." Pathological's visibility has come not so much from downloads from the Web site, but rather by virtue of inclusion in two popular Linux distributions, Debian and Gentoo.

As to inspiration (and having acknowledged Frozen-Bubble earlier) for the game, he explained,
"During university, I helped Mike Brenneman write a DOS clone of Rainbow
Arts' Logical. We did it just for fun, and to see how hard it would
be. Years later, Paul Prescod sent me the email that I consider my
primary inspiration for Pathological, in May 2001. I've attached a copy of it. It stayed on the back burner for over two
years before I decided I had time to start work on the project."

(Editor's note: the email message follows)

Date: Thu, 31 May 2001 18:32:37 -0700
From: Paul Prescod
To: John-Paul Gignac
Subject: Programming anti-challenge

Sometimes it is fun to take on a hard programming challenge just to see
if you can do it. But for me, sometimes it is fun to take on a challenge
that I know *should* be hard and find that is really, really easy
because of the progress of programming languages, APIs and technology in

In that spirit, I offer the following challenge. I would be curious
about what would happen if you rewrote your balls and spinners game (I
remember it even though I only played for about half an hour) in a new
library called "PyGame".


I downloaded "SolarWolf," which is written in PyGame, and I was amazed
at how clear and clean the code was. I was amazed that I was looking at
the code for a realtime game, because it used no hacks or ugly shortcuts
in the code. Now I realize it isn't Quake but it is still evidence of
how far we've come in programming technology (in my opinion). And it
demonstrates that thanks to Moore's Law, we'll be able to do more and
more with higher and higher level languages.


The rest is history. As is my productivity since installing Pathological.


  • Free Software
Click Here!