[Kde-games-devel] Killbots

Parker Coates parker.coates at gmail.com
Tue Sep 2 04:12:50 CEST 2008


Hello all,

Despite having hung out on this list for the last two years, I've
never really introduced myself or my game, Killbots. Since I'm about
to start asking for favours, I thought I'd do that now.

-------------------------------------------------------------------------------
My name is Parker Coates. I'm 25 years old. I currently live in
Sherbrooke, Québec, Canada. I program ultra-violet wastewater
disinfection equipment for a living.

I've been working on my game, Killbots on and off for the last two
years. It's actually the first and only thing I've ever written in
C++. I had just read a great introduction to C++ book and wanted to
start a new project to test what I'd learned. I was KDE user and had
recently discovered the game "robots", so I thought a "robots" clone
in KDE would be a great start.

In case your unfamiliar, "robots" is a classic, turn-based, Unix
console game in which the player tries to avoid being killed by
attacking robots. The player can not attack the robots directly, but
instead must get them to collide with one another or the rubble of
previous collisions. The game itself is quite simple, but can be
surprisingly entertaining. The GTK port of "robots", Gnome Robots,
added several new twists to the game, including two classes of robots,
pushable junkheaps, and safe teleports, all of which have been
included Killbots.

The game was originally called KRobots, a name which, interestingly
enough, is now used by this non KDE project:
http://freshmeat.net/projects/krobots/. It was written in KDE3/Qt3
using QCanvas and used raster images for sprites. Due to my lack of
experience with C++ and Qt, I ended up rewriting the entire
application twice, because I kept coding myself into corners due poor
design decisions.

By the time I had created something reasonably playable, I learned
that the future lie with KDE4/Qt4, so I once again abandoned the
existing code and started a fresh rewrite to KDE4 and QGraphicsView
which was brand new at the time. SVG theming, custom rulesets,
highscores and animations were slowly added. The application was
renamed to Killbots, and eventually became respectable enough to move
into the SVN playground. While there it has continued to gain polish,
features and documentation and is now nearly release worthy.
-------------------------------------------------------------------------------

Okay, so that was the introduction, now onto asking for favours.

First and foremost, I'd greatly appreciate having Killbots reviewed.
Interface, game play, documentation and usability reviews are all
welcome, but a code review would be most appreciated. As I mentioned,
this is my first C++ application, so I'm extremely interested in any
comments or suggestions on the code and/or application design. I'm a
bit of a perfectionist, so I'd be glad to hear about even nit-picky
issues or inconsistencies. Ideas for potential new features are also
welcome, but lower priority.

Second, I'd like some input on what the logical next step is for
Killbots. I remember there being a list of requirements somewhere that
a game needed to meet before being considered for inclusion in
KDEGames, but I can't seem to find it now. Does such a list exist?

There has also been talk lately of dividing KDEGames into Minimal,
Extended, and Extra submodules. Obviously Killbots wouldn't fit in the
Minimal set, but I question whether it would even be popular enough to
go into the Extended set. I'm a bit apprehensive about the Extra
submodule though, as it's my understanding that these would actually
live in Extragear, which isn't automatically
translated/packaged/released with the main KDE project. Thoughts on
this would be appreciated.

Third is artwork. I've already spoken to it-s about creating a new
default theme, but but if anyone else is interested in making a theme,
the more the merrier. There are even basic instructions on how to do
in the game handbook. I'm also in need of an application icon and
icons for my three custom actions: teleport, teleport safely, and wait
out round. Any help with any of these would be greatly appreciated

Well, that's all I can think of write now. If you managed to make it
through this massive email, thanks for listening.

Parker


More information about the kde-games-devel mailing list