For fun, I’ll discuss different aspects of RoboZZle and assign each a letter grade.
Game Addictiveness: A
Let’s start with the positive. RoboZZle has shown to be an addictive game, at least for a certain audience. There is a core group of players that log in regularly, solve puzzles, participate in discussions, design puzzles, propose improvements, and so forth.
This level is amazing.
I spent about 6 hours solving this one. It took me a while to realize that every movement had to be saved on a stack. Then I developed diagrams, models, and a logical structure around it. And eventually stumbled my way to the solution logically. But it all seems so intuitively obvious now.
This is the best level I’ve solved so far. Bravo.
RoboZZle players have contributed in a variety of ways:
- aalku contributed articles to a number of sections of the wiki (still in an early stage).
- evko is a brilliant puzzle designer who created 42 puzzles, many of them amazingly clever and innovative.
- hr0nix implemented an automated solver for simpler RoboZZle puzzles.
- life96 made a number of helpful suggestions, and investigated the CPU usage of the game.
- stingray blogged about RoboZZle. The article Can Games Teach You To Program? got popular on reddit.
- recursive has an amazingly deep understanding of the game, and discovered shortest known solution for nearly all puzzles.
Finally, I really like this comment left by player spikeless the day that RoboZZle launched:
Brilliant game! It has seriously impacted productivity in our development team leaving nothing to be heard but frustrated curses and elated ‘Yesss’s.
For addictiveness, I give RoboZZle a shameless A.
My approach has been to do the minimal set of features I can get away with (but no less), and then grow the game from there. Otherwise, I would still be only 50% done; or more likely, I’d have given up a long time ago.
Since the game launched, I’ve been furiously adding features, in part driven by user feedback, and in part based on what I think will make the game work better.
I give RoboZZle a B here because there are so many more things that I want to do with the game. I can already tell that this will keep me busy for a good while.
Code Quality: B-
This section is about bugs! Similarly to features, I tried to make things “good enough”, and then deploy. Otherwise, I would never get anything done.
Most of the time, this worked fine. Only once a new feature introduced a major bug that impacted the game play for a lot of users. That time, the robot would sometimes seriously misbehave, e.g. continuing its path even though it should have died by falling off a tile.
Except for this one instance, most bugs have been minor issues that most players won’t run into. There are a few minor blemishes still present in the game, but I’m working my way through them.
So, it seems appropriate that RoboZZle gets a B- for quality.
Incoming Traffic: C+
Hmm… incoming traffic. While the loyalty of visitors seems to be great, the incoming traffic numbers aren’t quite as impressive. This table gives a quick summary:
|Absolute Unique Visitors||12,754|
|Registered Players with 10+ puzzles solved||877|
23,000 visits is nothing to sneeze at, but I’ve seen similar numbers for a blog post that took me a weekend to write. (In all fairness, most of those visitors probably spent less than a second “reading” my blog post.)
Here are the main sources of incoming traffic for robozzle.com:
So, it’s silverlight.net, some popular Russian site, google, dotnetkicks, and two blogs (both recommended reading). Other than that, there are many sources that contribute a small number of visitors each.
I should be able to do better. A part of the problem is that most people still don’t have Silverlight installed, and Silverlight gaming is in its infancy. There are signs that this is about to improve, such as http://mashooo.com, http://silverarcade.com and http://silverlightclub.com, so I’m keeping my fingers crossed.
The other part of the problem is that I need to learn how to better market RoboZZle and draw in visitors. This is a new territory for me, but I’m learning new things every day.
And that’s the main reason I’m working on RoboZZle, so it’s OK.