LJ Archive

Grubby Gems

Daniel Bartholomew

Issue #164, December 2007

Three great stocking stuffers for kids of all ages.

Wanting to know more about the company and what makes it tick, I sat down (in a virtual sense) with Grubby Games' cofounder and programmer Ryan Clark.

DB: Thanks for agreeing to this interview. First off, how long has Grubby Games been around, and perhaps more to the point, how long have you been making Linux games?

RC: Grubby Games was founded in 2004, and we've been making Linux games the entire time.

DB: What about the games available for sale on your site that run only on Windows and/or the Mac platform?

RC: The games on our site that do not run on Linux were created by other developers; we sell those games as affiliates. All of the games we have developed (and will develop) run on Linux.

DB: That's good to hear! What led to your decision to support Linux with all of your offerings?

RC: We chose to make Linux games because I personally always have wished that there were more games for Linux. It seems that others share my sentiment, as we have received a number of e-mails from Linux users, thanking us profusely for making our games available for Linux. (We also get our share of comments from Linux users who are angry because our games are not free/open source!)

DB: Do you think you might ever release your games or any of your animation/rendering or other libraries under an open-source license? I'm thinking of something along the lines of what id did with Doom and Quake when after the commercial benefit of the games had passed, they released the source code to the engine (but not the levels themselves) under an open-source license.

RC: I hope we'll be able to do that at some point, yes. However, we already do it in a manner of speaking, through another Web site we run: The Game Programming Wiki (gpwiki.org).

I've written a number of articles for the wiki, many of which describe the exact same methods I use in our games. And on the GPWiki forums, I do my best to answer any questions people may have.

DB: I'll have to check that out. What percentage of your sales come from Linux versions of your games?

RC: About 2%, although I do know that a number of people have purchased Windows or Mac versions of our games because they want to (indirectly) support our Linux efforts.

DB: Good for them! Do you think the market is ready for more commercial Linux game studios?

RC: It's hard to say. We certainly wouldn't be able to afford to do what we do if we were Linux-only. However, I do think that more studios should consider making Linux versions of their games. Many already support Windows and Mac; it's not much harder to support Linux too. Not supporting Linux is just like throwing away money.

DB: So, at least for now, is the cross-platform approach the best way to go?

RC: As I said, we certainly couldn't survive on the money we currently make from the Linux versions of our games. However, we're definitely not reaching all of the potential Linux customers that we could be.

If we're currently reaching only 2% of potential Linux customers, then yes, we could survive by making Linux-only games, if we could somehow reach 100% of them. And I'm confident that we're probably reaching less than 2%, at present. But how do you reach the rest of them? We haven't found any cost-effective way to do it. Expensive advertising campaigns surely would help expand our reach, but likely would not benefit our bottom line.

DB: How much of your code is fully cross-platform?

RC: More than 99%. We have platform-specific code only for a few things, like locating a good place to store user profile data, or opening a Web browser.

DB: How hard is it to support all three OS platforms simultaneously?

RC: Really not that hard. The tricky bit is not the coding, it's the deployment on each platform. But even the deployment is easy once you find a system that works well for you. With each release, it becomes easier and more automatic for us.

DB: Do you have any games currently in development that you can tell us about?

RC: We have three games in development, but they are all in their very early stages, so we're not quite ready to divulge any secrets. But, I can tell you that they'll all run on Linux, of course. We're branching out in a few new directions, so expect to see some cool new stuff.

DB: I'm excited to see them! Are you the head programmer/only programmer on these new games?

RC: I was the only programmer when we started in 2004, but we now have three programmers on staff. Programmers work on their own games; we feel that it's more efficient to run three projects with one programmer each than one project with three programmers.

DB: All three of your current games ship with a ton of levels. How do you decide when you have created enough levels and are ready to ship?

RC: We usually aim for a certain minimum amount of play time. (We want to make sure our customers feel like they got good value for their money.) As a result, our games tend to have a minimum of about six hours of game play. If you are superhuman, and you play through all the levels without any sort of hiccup, you can finish our games in around that amount of time.

In reality, our games will last much longer than that, of course. I seriously doubt anyone could solve all of the Professor Fizzwizzle or Professor Fizzwizzle and the Molten Mystery levels in less than a full-time week. The games also provide replay value through high-score systems, trophies or level editors with downloadable levels made by other users.

DB: Speaking of the level editors, was their inclusion a planned feature from the get-go, or was it a “well, it's built, so we might as well include it” kind of thing?

RC: A level editor just felt like a natural addition. If people enjoy solving puzzles, some percentage of them also will enjoy creating puzzles. It was an easy way to add replayability to the games, and a way to build community.

Also, we just really wanted to see what people would come up with. I was very pleased the first time someone stumped me at my own game.

DB: Are any of you still creating levels for the games and posting them on-line, or are you all too busy creating the next great Grubby Games game?

RC: I check out levels created by the community, but I rarely post new ones myself. As you say, we are very busy working on the next batch of games.

DB: Seeing as your games run on the big three OS platforms, which one do you do your primary development on?

RC: Our first game, Professor Fizzwizzle, was developed entirely on Linux. Since then, we've moved over to Mac OS X. The reason for the move is Parallels Desktop. Parallels allows us to run Windows and Linux as virtual machines, from Mac OS X. As a result, we can develop and test for all three platforms on one machine, without needing to reboot—very handy.

DB: Very handy indeed—I'm a big fan of virtualization myself. On a slightly related note, I do have to say that my favorite game of the three is FizzBall. When you were in the planning stages, how did you come up with the idea for this game? It's a wonderfully crazy cross between Katamari Damacy and Breakout.

RC: Matt and I are both huge fans of Katamari Damacy, so I think it influences our thinking somewhat. We're also fans of Breakout/Arkanoid, but felt that there were a few major shortcomings of the genre: the “last brick problem”, and the “lack of control” problem.

The “last brick problem” is likely familiar to you: you've got one brick left in Breakout, but you can't quite seem to hit it—so frustrating! We feel we solved this problem in a number of ways. First, the Katamari-ness of FizzBall means that the ball grows over time. The large end-game ball makes it easier to hit any target you might be aiming at. Second, since you're supposed to be rescuing animals rather than breaking things, you don't actually have to destroy everything on the level.

The “lack of control” problem lies in the pinball-like nature of Breakout: after you hit the ball, you have nothing to do until it comes back down. We addressed this problem by introducing “fans” that allow you to alter the ball's trajectory while it is in flight. This allows skilled players to achieve large combos, collect hard-to-get trophies, and it makes FizzBall less of a “waiting game” than traditional Breakout titles.

DB: Yes, you did solve both of those issues quite well, and I'm working my way through the last few trophies. Finally, I wanted to ask you about who created the levels on Professor Fizzwizzle and Professor Fizzwizzle and the Molten Mystery? Some of them (especially the ones in the advanced level sets) are insanely hard! I'm almost convinced that you have a secret team of psychotic chess geniuses on your staff.

RC: Matt and I created almost all of the levels for Professor Fizzwizzle, even the advanced ones. It was a challenge to make so many levels, but a lot of fun too. For Professor Fizzwizzle and the Molten Mystery, we hired level designers to help us. In fact, to find the best level designers, we simply chose from the players who already were submitting Professor Fizzwizzle levels to our Web site! Jarod and Lior did an amazing job for us.

DB: Yes they did. Thanks for taking the time to talk with us today.

RC: Thanks Daniel! It's been fun.

The Games

With the interview over, it was time to kick my kids off of my computer and discover for myself what these games do right, and what they don't.

Grubby Games' current trio of games can be split into two types. First, there's Professor Fizzwizzle (PF) and its sequel, Professor Fizzwizzle and the Molten Mystery (PFMM). Both are puzzle games where the object is to get the Professor from the starting point to the ending point utilizing various gadgets and objects along the way.

Second, there's FizzBall, which is completely different. It is an arcade-type game in the Arkanoid tradition with very little in the way of puzzle solving.

All three of the games are suitable (and fun) for all ages, from 3–103.

Purchasing the Games

Because I so seldom purchase Linux software, it felt weird when I bought the games. Despite the strange “I'm buying a game for Linux!” feeling, the actual process was very easy. Essentially, it's the same as purchasing anything else on-line. Your receipt and the games themselves are delivered to you via special links that are sent to you by e-mail.

The games range in size from 10–20MB, so if you're on a slow Internet connection, you may want to leave the downloads running overnight so that they'll be finished and waiting for you in the morning. I was able to download them in just a few minutes.

After the download is complete, you will have a .tar.gz file (or two or three) sitting in front of you waiting to be unpacked.

Installation and First Run

The games are distributed as .tar.gz files, and untarring them is how they are installed. I put mine into /usr/local/share/games/grubby/, but they could live anywhere on your system.

Start the games using a shell script called run.sh on PF and FizzBall. On PFMM, the game is started with script called run.cmd. It would have been nice if all three were named consistently. A graphical shell script installer of some sort, like CrossOver Office, would be another alternative. Quibbles aside, the .tar.gz method will, at least, work almost everywhere.

One of the first things I did after unpacking the files was to create some launchers for my GNOME panel, so that I didn't have to launch the games from the command line. The icons included are ugly, at least they're there.

Launch the games from the command line the first time you run them, just to be sure they're working properly. When run in this way, you will get some helpful diagnostic output in your terminal if things aren't quite right. In the case of PF, you must launch the game from the command line the first time, because it asks you which sound system and driver to use. I'm very glad the two more recent games have eliminated this step.

I think the command-line oriented installation process on all three of these games, although relatively painless for me, could be a big stumbling block to nontechnical Linux users. Additionally, such a manual install process is out of character with the otherwise very good-looking games. I hope they come up with a better method for future games.

There also were some libraries I had to install on my Ubuntu 7.04 box to get the games to work right: zlib1g-dev and libpng3 for FizzBall and libsdl-ttf2.0-0 for PFMM.

Installation and library issues aside, once the games are up and running, they look and sound great. They're all very polished—exactly what I expect from games I paid real money to get.

Game Play

Each game starts up into an easy-to-use menu system that you can navigate either with your mouse or keyboard. The Preferences section of each game lets you set things like whether to play fullscreen or in a window, the volume of music and sound effects and so on. Everything is simple and well organized.

Professor Fizzwizzle

The focus of the two Professor Fizzwizzle games is on puzzle solving. The easiest, or “kid's” levels, are basic runs from one side of the screen to the other, often with neat pictures built out of different level parts filling the screen.

Figure 1. One of the Kid Levels from PFMM

The other levels are divided into “regular” and “advanced”. These range from fairly easy to nearly impossible.

Figure 2. One of the Advanced Levels from PFMM

The replayability of individual levels in each of these games is not very high, because once you know how to beat a level, you easily can do so at any future time (unless, of course, you're like me and forget). Thankfully, the games come with enough levels to keep you busy for a long time. What keeps my children coming back to these two games are the level editors built into each one.

Figure 3. The PFMM Level Editor

My kids spend hours fiddling and perfecting their levels, and I have to say, I'm impressed with the sophistication of some of their best ones. I've even taken a stab at level design myself and came up with a Linux Journal-themed level that, although not very hard to beat, was still fun to make.

Figure 4. My Linux Journal Level

I've uploaded my level to the Grubby Games Web site, so feel free to give it a try.


If you are more action-oriented than puzzle-oriented (like me), give FizzBall a try. The object in this game is to collect all the animals. There are crates and rocks and trees and even aliens in your way. You play by bouncing your fizzball off of these obstacles while making sure you don't let the ball get past you.

Figure 5. The ball starts out small in FizzBall...

At the start of a level, your fizzball is small and can pick up only nuts, apples and butterflies. As you collect more food and animals, your ball gets bigger and bigger, allowing you to collect even larger animals. Everything literally snowballs, and by the end of the level, you should have a pretty substantial fizzball bouncing around the screen collecting animals and destroying every crate and fence that gets in the way. You beat levels by collecting all the animals.

Figure 6. ...but it keeps growing the more animals you catch.

The game has a ton of power-ups to keep things interesting, and there also are special achievements you can collect for beating levels in a certain way.

One of my favorite features is that the kid difficulty level has a bumper along the bottom of the screen that prevents you from losing your fizzball. This makes the game playable even for very young children.


You can't go wrong with any of these games. If I had to choose between Professor Fizzwizzle and Professor Fizzwizzle and the Molten Mystery I would go with the latter, simply because it has more gadgets, harder puzzles and a better level editor. However, if I could choose only one of the three, I would choose FizzBall.

There are demos of the games at the Grubby Games Web site, so you can try before you buy. If you do decide to purchase one or more of them, I can honestly say that they're all worth the price. Games are $19.94 each, but there's a $5 discount if you bundle more games with your purchase. Now, if you'll excuse me, there's this one level that I have to get back to....

Daniel Bartholomew lives with his wife and children in North Carolina. He can be found on-line at his occasionally updated blog: ubuntu-watch.com.

LJ Archive