Friday Nov 24, 2006


After all the great comments I received because of my Curse of Monkey Island post, I'll certainly be looking at ScummVM soon, but before that, I thought I'd give something else a try.

The latest edition of the Make magazine, had a small article on pygame, which is

"a set of Python modules designed for writing games. It is written on top of the excellent SDL library. This allows you to create fully featured games and multimedia programs in the python language. Pygame is highly portable and runs on nearly every platform and operating system."

I've mentioned before that I was looking for a framework for writing games. I tried out Zillions of Games, and wrote a simple sliding blocks puzzle, but I never got back to trying a port of Reve, my Othello program. Zillions of Games is a Windows-only binary, (which doesn't look like it's currently being actively worked on by its creators), so it's not exactly what I'm looking for.

But pygame might be. As Python has recently become one of my favorite languages, I thought I'd give it a try.

Installation was a snap. I already had Python installed on my Ubuntu system for developing Orca, so all I needed to do was install pygame, libsdl, SDL_mixer and SDL_image. All of these were available in the Synaptic Package Manager and I was done in about two minutes.

Before I start looking at the pygame line-by-line chimp tutorial, and the introduction for python programmers, I decided to give a sample game a try out to make sure everything was working fine. My wife has recently bought our son Jewel Labyrinth for his Windows machine (which incidentally keeps crashing on my Windows machine). It's a simple puzzle game and he seems to be enjoying it, so I decided to look for something similar to that. I picked Magicor. I downloaded and unpacked the source code and the data files. To install it, I simple ran:

% sudo make install

in the Magicor directory. Then, when I type:

% Magicor

it nicely starts up the game. It's everything I was hoping for. You get the penguin to create blocks of ice which you then slide or drop to extinguish fires. Nice graphics, good animation, simple user controls (for this game, there were just four arrow keys, space bar and the Return key), interesting sound effects, optional full screen mode, only partially annoying background music and lots of levels which progressively add new features and get more difficult.

Duncan and I were hooked. We wasted spent several hours yesterday playing it.

And there are lots more games to choice from.

This is going to be fun, and after I've stopped playing the games, hopefully I'll still have enough enthusiasm to port Reve to Python using pygame.




Wednesday Nov 22, 2006

The Curse Of The Curse Of Monkey Island

I don't know whether to chalk this one up to senility or bad user interface design in the game. Bad user interface design in a LucasArts game! What am I saying!

Let me back up, and tell you the whole story. Bear with me. It'll take a while.

For all-the-family-together quality time, for the last couple of years, we've occasionally been playing various computer adventure games. No doubt, thirty or forty years ago, we'd have all been huddled around some board game together, but nowadays technology has taken over.

The latest game was one from LucasArts called The Curse of Monkey Island.

This game is quite old (as computer games go) and requires you to run in 256 colors at 640x480 resolution, it won't "just work" on our Windows Xp box. So we have an old Windows 98 machine for programs such as this.

I started working from home a few months ago, and needed that Windows 98 machine in the office, so that it could run an old HP LaserJet 1100 printer. I don't have drivers for that printer for Windows Xp. At that time, we stopped playing the Curse game. We were about three quarters of the way through.

Now that I have the new HP Laserjet printer in my home office, the Windows 98 machine is freed up, moved to a more accessible spot, and we resumed playing the game. The problem was, I'd forgotten exactly where we were at, and what we'd been doing before that, to get there.

For those adventure gaming connoisseurs who might be able to follow along with the next part, we're playing the Mega-Monkey version, and are working through part IV: "The bartender, the thieves, his aunt, and her lover". For the rest of you, try to keep up.

We are in the hotel and we are trying to give the man behind the bar, a drink to cure his hangover. One of the ingredients is the hair of the dog that bit you, so we need to get the dog in the graveyard to bit us. So using one of the numerous walkthrough for the game, we know that we need to feed the dog the biscuit that contains the maggots.

I looked in our inventory and there appeared to be nothing there. Certainly no maggoty biscuit was visible. Arrgh! What do we do? Our last saved game that showed a maggoty biscuit in the inventory was way back in part II ("the curse gets worst").

So I decided to load that game and work my way through everything that needed to be done up to where we were in the last saved game. I mean everything. For anybody who's played the game, they'll know that one of it's small failings is that painfully long sea battle sequence where you have to trade rhyming insults with all the other pirates. Luckily, I found another walkthrough with all the pairs of insults, which reduced the pain somewhat.

After a couple of hours, we were back where we'd started. I looked in the inventory. It was almost empty! The maggoty biscuit was gone!

I then noticed that the stupid arrow shaped hinges on the inventory chest allowed you to scroll left and right in the inventory. That wasn't obvious, especially as the recipe book in the game uses large red arrows as you hover over its left and right edges, to indicate you need to click here to turn the page in that direction.. Consistency would have been a nice thing. There was also nothing on this in the beautiful full color guide that came with the game. Grrr!

Don't get me wrong. I love these games from LucasArts. They are easy to get into and understand. The humor is excellent. You can't die, so that's a plus. All in all, a great gaming experience.

Except for this one small thing.

We've now finished that game, and have started in on Grim Fandango. Yes I know. Another blast from the past. But these games are perfect fun. We don't need the latest 3D technologies. We just want to be entertained.

Having said that, I am getting a little fedup walking Manny around everywhere in the Land of the Dead, and wish that the UI was similar to Curse (where you just click once to move to a new location), but I'll get over it with enough practice.

Recommendations for other similar games that you've enjoyed would be great.



Monday Jun 19, 2006

Links for 20th June 2006

A puzzle and game oriented set today.



Tuesday May 02, 2006

Word Chains

Here's one for the Must-Get-A-Life Department. Yesterday, in one of our internal mailing lists, with reference to a snafu with somebodies laptop, I saw a reply containing

"Is this one of those test (sic) to see how many steps you need to get from ACER to BORG? "

Now I knew what he meant, but my brain started to think about word games. Just how many intermediate words would you need (changing one letter at a time) to get from ACER to BORG?

I decided to see if there was any software out there to help me. I went a-googling. The problem initially was knowing what you call this sort of thing. After a bit of searching, I found out that they are called Word Chains or sometimes Link Letters.

After about another five minutes, I came across exactly what I was looking for. Ruby Quiz #44 is all about word chains. I downloaded the solutions, and as I didn't particulary care exactly how fast it solved this, I just picked the first one from Adam Sheely.

I initially used a copy of the standard Unix dictionary of words (to which I added "acer"), but it didn't find a solution:

   % ruby wordchain -d /export/home/richb/wordchain/words acer borg
   Wordchain Finder
   Connecting acer -> borg

I needed a bigger dictionary. Back to googling. I found the Windows & Macintosh Dictionary Search And Creation Software webpage, and downloaded the Macintosh version of Dictionary Genesis. I unpacked it and extracted a much larger English dictionary and copied it over to my Solaris machine.

Now when I rerun the wordchain program, I get

  % ruby wordchain -d /export/home/richb/wordchain/English_Dictionary acer borg
  Wordchain Finder
  Connecting acer -> borg

So the answer to my original question is 7.



Wednesday Nov 09, 2005

Polar Rescue

After yesterdays huge discourse on how to handle email, I'm just going to put out a short post today.

Here is a nice little Shockwave time sink game to waste away the hours.

Lots of other interesting stuff on their website too.


Friday Oct 14, 2005

Reve - Twenty Years On

Twenty years ago, I wrote my first version of an Othello game for the Sun workstation. This was using the SunWindows graphics library, and using a computer strategy written by Ed Falk.

Over the years, new graphics versions were written, including SunView, X11, XView and Motif. Around 1989, Yves Gallot contacted me. He had some code for generating the computer moves, that he wanted to include with my graphics code. And so reve was born. The name comes from the French for "to dream".

We had big plans for it. It had quite a following at that time. We built up a community of several dozen people, with about 10-15 developers actively working on it, fixing bugs, tweaking things and adding in new features. We even entered it for the Othello Computer World Championships in 1990 [link].

Sadly, a couple of years later, interest started to languish. I also started getting interested in other things. Around 2000, when I started getting involved with GNOME and Gtk+, I made my first attempt to port the code to that platform. I got distracted with other things and never finished it. I tried again in 2002, taking a slightly different approach. Again, this work was never completed.

Back at the end of July this year, I started a third attempt. This time I decided to do all the graphics using Glade, and to just load it into my application with libglade. Since then, whenever I've had a spare moment, I've continued to work on it. Things went much faster this time. It's now at the point where I'm not embarrassed for it to be seen in public, and I think it's okay enough for other people to try it out ( [Download] [README] [Screenshot]).

It really needs a HCI/GUI makeover to make it as pretty as some of the gnome-games applications. Part of me would like to do that. Another part wants to leave the UI fairly simple, to facilitate the port to the next graphics toolkit that comes along.

Update: John Spray has reworked the Preferences popup to be more HIG compliant. I've generated a new version of reve with his changes in it. The Download link above has been updated to alway point to the latest version.

I've no idea how competitive it is against the current crop of Othello programs. Hopefully if I get some more spare time in the near future, I can find out.



Wednesday Oct 12, 2005


I've got just the game for Dan Rice, who regularly posted Sudoku Puzzles on his blog. It's Snoodoku, a new Windows puzzle game from Dave Dobson, creator of Snood.

Like Snood, it is non-violent, intellectually challenging, and non-confrontational. Snoodoku is based on Latin Squares, first posed by Leonhard Euler in 1783, and more recently developed into a game known as Number Place or Sudoku, popular in the U.S. and Japan. This popular 81-square puzzle game is found frequently in newspapers and puzzle books and has become quite an obsession among puzzle enthusiasts.

Snood is one of my favorite Windows games.

I guess I know what I'll be doing tonight...


Monday Oct 03, 2005

Ten Free PC Games

While looking around for Zork links for a recent post, I came across this CNET article, entitled "Gratis Gaming: 10 real PC games you can download for free".

With new games going for $50 or more, this is certainly worth checking out. All of them have downloads for Windows, but some of them work on Mac and Linux as well.

  • America's Army: Special Forces (Window, Mac, Linux).
  • Battlecruiser 3000 A.D. (Windows)
  • Grand Theft Auto & Grand Theft Auto 2 (Windows)
  • Hidden & Dangerous Delux (Windows).
  • The Marathon Trilogy (Mac, Windows)
  • Return to Castle Wolfenstein: Enemy Territory (Windows, Mac, Linux)
  • Starsiege: Tribes (Windows)
  • Wild Metal Country (Windows)
  • The Zork Trilogy (Windows, Mac)

The article includes links to reviews of some of these games, plus suggestions on alternatives that are worth paying for.


Wednesday Sep 28, 2005

Riddle of the Sphinx

I can remember when I was a kid that we'd sometimes do a recreational activity in the evening, as a family. Maybe it was a board game like Snakes and Ladders (Shutes and Ladders to all the Americans reading this) or Monopoly. Maybe a game of cards or Chinese Checkers. Something that all the family could enjoy.

Our current such activity with Duncan is to play the computer adventure game Riddle of the Sphinx". We got it at the last Los Altos library "book" sale for $3. It was published about 2000-2001. We have an old Windows 98 machine (Pentium II) that we keep around for games like this (and for a old HP laser printer that has a parallel interface and doesn't seem to have appropriate Windows XP drivers).

We loaded the game up last week, and we've been spending an hour each night playing it together. There are spoilers ahead, so if that's a problem stop now.

Here's a helpful hint. If you have small children, spending a lot of time exploring every single option and potential clue bores 'em rigid. Just get to the exciting things. We are using a walk-through so that we just have to do the essential bits, and the bits that provide interesting feedback. For this game, this is doubly important as there is an inordinate amount of redundant items that you could potentially waste a lot of time on. Lots of things are very unintuitive too. It's also had mixed reviews [1] [2] [3]

So Dad is the pixel pusher. Mum is the walk-through monitor (on another screen on another PC alongside where we are playing the game). Duncan is just there, grokking the fullness and giving us lots of suggestions on what to do next. Now I don't know whether it's because by the end of the day I'm just tired or it's his young eyes or what, but he's seeing things that both my wife and I are missing, which is great. He's also excited by the whole puzzle solving aspect of the game. A skill which will no doubt be useful elsewhere in life.

One thing I get a chuckle out of is when he shows astonishment at something which seems so natural to me. "How'd you do that!" he exclaims. A couple of examples. Near the beginning of the game, we are in the tent of Gil the archaeologist. There is an audio cassette there. I picked it up, opened up the cassette player, put the tape in, closed the lid and pressed the play button. (All with a few mouse clicks). All the sort of actions you'd do with the real objects. There was a similar situation with striking a match from a book of matches and lighting a candle. Now that Duncan realises that the computer world mimics the real world he's not so surprised and is starting to pick up on what sort of things you can do with each object. This is great to watch. HCI designers really should work with kids when they are designing software. If kids "get it" and can easily use it, there is hope for the rest of us.

Having said that, the game is still a little frustrating at times. The pointy hand cursor for turning 90 degrees and 180 degrees are remarkably similar so it's very easy to get disoriented. I'm also glad we've got the walk-through. For example,

"Looking down you will see it is too far to jump but wait a while and the crocodiles form a bridge for you."

Oh yeah. I'd have certainly got that one on my own. There is another time where we have to break open a nice looking pot to get a key. As Duncan put it, "so we have to smash lost art to do this?" I agree. It wasn't obvious. It didn't seem to be what an archaeologist would do.

We are currently about half way through the game. The game technology is a little dated now. There's nothing that's made me go wow! like the first time I played Myst when it had just come out. But for a seven year old, there are lots of things that keep him enthralled. We'll probably try some other similar games after this one. If you have any recommendations, please let me know.


Thursday Sep 22, 2005

Zork and Colossal Cave Adventure

At a Los Altos Library sale a couple weeks ago, I bought The Zork Anthology for a buck. Since then I've downloaded the first three Zork text adventures, which Infocom are making available for free, for Windows or Mac. The original MIT version is also available, including source code.

I'm using the book to help me quickly cheat get up to speed on each game. With the current generation of graphics based computer adventure games, text adventure games like Zork are like dinosaurs, but I still have a fond affection for them.

I think it's because I spent a lot of time with the original Colossal Cave Adventure game by Crowther and Woods in the late 70's. Colossal Cave Adventure was the historic first "interactive fiction" game. This was on an old PDP computer. I have a small claim to fame from those days. I got so good at this game that I could get all 350 points (including the lousy last point) in 32 minutes. Each of the moves was hard-wired into my brain. I could even navigate that twisty maze of passageways without a single false turn. Of course, I had to look at the source code in order to learn how to do this.

A couple of comments on that Adventure game. One of the authors, Don Woods worked for Sun for quite a while which was cool. Like Tim Bray, he used to wear a wide brimmed hat everywhere. It's also one of the best commented programs I've ever seen. Very readable, which is even more impressive as we're talking about FORTRAN code here. Since then it's been ported to a variety of languages. and extended several times. Source code is available for most of these versions.

I also see that Zork has now evolved into various graphics adventure games (Zork Nemesis and Zork Grand Inquisitor). Yet more games to look at.


Friday Jul 22, 2005

Word Freak - More Scrabble Links

I'm continuing to work my way through Word Freak (about eigthy pages to go). I'll review that soon, but for now, I want to share a few noteworthy links to items touched on by the book.

  • To a computer version of Scrabble available for free download as an eight hour trail, which you can later buy. This appears to be based on the Maven Scrabble program by Brian Sheppard.
  • Verbatim Magazine. Their web page describes it as "the only magazine of language and linguistics for the layperson". Several back issues are also available for download or for browsing online.
  • As mentioned by Jeff in a comment to my previous Word Freak post, LeXpert is available to download.

    It's a software program designed to assist word game enthusiasts in expanding their knowledge of words. It offers more than 3500 word lists and different ways of viewing these lists. Customized lists can be created based on patterns, cryptograms, anagrams, number of vowels, etc.

  • You can look up words in the official Scrabble players dictionary. There are two versions: one for the USA and one for the rest of the world. More on why that is so, with the book review.
  • A Scrabble FAQ with oodles of fascinating links.



Friday Jul 15, 2005

Word Freaks - Three Snippets

I'm really enjoying Word Freak, subtitled "Heartbreak, Truimph, Genius and Obsession in the World of Competitive SCRABBLE Players". I'll probably do a full review when I've finished it, but for now, I thought I'd pass on three items of interest.

The book mentions that one of the Scrabble players had a subscription to Word Ways: The Journal of Recreational Linguistics. Their web site has loads of interesting articles if you are into word puzzles and other aspects of logology.

As you can imagine, professional Scrabble players need to know lots of words. They memorize huge lists. This site can help you. They have several lists. For anybody starting out on the road to living room domination in this game, you should memorize everything on the Big Cheat Sheet (a one-page sheet containing all 2 and 3 letter words, vowel dumps, and short J, X, X, and Z words). Print it out now and laminate it.

Finally, Scrabble players need to be good at anagrams. I blogged about anagrams ten months ago, and included a link to this site. There have been several anagrams mentioned in the book (so far) that impressed me. These include:

  • 11 + 2 = 12 + 1 a.k.a. ELEVEN + TWO = TWELVE + ONE
  • In the Book of John, Pontius Pilate asks Jesus, "Quid est veritas?" ("What is truth?"). His answer is an anagram "Est vir qui adest" ("It is the man who is before you").
  • The word anagrams itself anagrams to the Latin ars magna or great art.

The book is riddled (no pun intended) with word games, puzzles and facts. I don't find many non-fiction page-turners (recommendations welcome by the way), but this is turning into one.



Monday May 30, 2005

Gathering for Gardner

If I go through all of my books, I have more non-fiction books by Martin Gardner than anybody else. I used to read his Mathematical Games column in the Scientific American and then used to buy the books that contained these articles. He has done more to popularise mathematics and the fun and games that can derive from it than any other person. He has also written a variety of other books on many different subjects.

Because of this, he has a great following of mathematicans, puzzle enthusiasts and even magicians. To honour him, they regularly gather together and present papers based on his work. There have been five gatherings so far. I discovered the Gathering for Gardner website by following a chain of links from a recent post of mine which mentioned Scott Kim, and in particular, his Inversions (upside down lettering).

Now there are lots of things of interest on the Gathering for Gardner web site, but let me draw you attention to two books in PDF format that you can download:

The Mathmagician and the Pied Puzzler: Edited by: Elwyn Berlekamp and Tom Rodgers [PDF]

Puzzle Craft by Stewart Coffin [PDF]

The former is a collection of papers written by various people in tribute to Gardner and the latter is an excellent resource if you'd like to build your own puzzles. Also check out the various Martin Gardner books in their bookstore.


Wednesday May 18, 2005


On Monday, I got my weekly game alert email from Shockwave. In it, they mentioned Chuzzle:

"Chuzzles are the fuzzy fun creatures everyone loves! Match three Chuzzles and watch them burst with happiness."

Well who could resists that? I thought it might be something Duncan could play that wasn't too violent. Exploding animals vs exploding humans with blood flying everywhere. Yeah, I know. It's a stretch.

Last night I found the time to download and install it on one of the computers at home, and started in on the free 60 minute trial. It is indeed a cute game. Duncan wandering in and immediately wanted to play it, so I showed him what he needed to do, and got out of his way.

I was reading in another room, and I could occasionally hear these bursts of hysterical laughter coming from him. That's usually a sign that he's getting near exhaustion and it's time for bed. I was just about to get up and suggest that, when he comes running in. "Daddy, daddy you got to see this!". We went back in the other room, and he started continually clicking on one of the cute fuzzy creatures. It's starts sneezing and after a few moments, there is a big explosion and it looses all of it's fur. You have a bald "fuzzy" creature. Then the fur grows back. The larger fuzzy creatures react in a similar manner. It is indeed very funny.

Duncan went though the 60 minute free trial and wants to buy the game. As this sort of thing is typically a one-day-wonder, I'm going to hold off for a few days and see if he goes onto something else. If he's still interested after that period, then I'll consider buying it.


Thursday May 05, 2005

sidtool - Software Interactive Debugger

To prevent bit-rot and to celebrate the 20th anniversary of it's first release, in my copious spare time I've been slowly working on a new version of sidtool, the Software Interactive Debugger [README] [download].

sidtool is a pacman like game. This is its fourth major release which now delivers a Gtk+ version of the program.

Although the software has only been tested on a SunBlade 2000 running Solaris 10, I hope it should "just work" on the various flavours of Linux as well.

See the manual pages or the online help for more details of how to play the game. See the INSTALL file for details on how to build and install it.

sidtool is based on the Perq Interactive debugger program, written by Professor Brad A. Myers when he was at PERQ Systems Corporation, back in the early 1980's. At that time it was written in Pascal for the POS operating system. Note that there were hardly any colour workstations around then, and the design and implementation of the program reflect that.

About 1985 I converted it to run under Unix and C on Sun's using SunWindows. That first version of sidtool was actually two programs "talking" to each other via a pipe. One program updated the screen, the other program read input from the mouse and the keyboard. This was required because at that time, SunWindows could not do explicit dispatching of events.

The second version of sidtool, was a "port" to SunView in 1987, and the program was modified to use a timer routine and a state machine, which listed all the possible states the program could be in. The graphics were simple, and in fact only used drawing to a graphics canvas.

The third version )in 1993) was another "port" to the latest flavours-de-jour in toolkit technology, with the graphics interface being rewritten using Suns' devGuide. It made use of a control panel with buttons, sliders, popup windows, scrolling list, a property sheet and the works. That release contained support for XView and Motif versions.

This latest release is a port to the Gtk+ graphical toolkit (one of todays flavours-de-jour in graphical toolkits).

I would consider this somewhere between alpha and beta quality (depending upon whose definition of beta you use). There are still several things listed in the TODO file that will need to be fixed up. I'm looking for help from Gtk+ programmers in doing this. The things that need doing are all relatively straight forward; I'm just not finding the spare cycles to finish this in a timely manner, so if I'm left to do it along with all my RealWork(TM), it could take quite a while.





« June 2016