Friday, April 6, 2007

Interview: Ingo Ruhnke aka Grumbel

In the first of a new wave of Free Gamer content, Ingo Ruhnke aka Grumbel and one of the most prolific open source game developers around has kindly taken the time to do an interview.



Please note that Ingo's first language is not English, and I've not modified his answers in any way other than to sanitize links. I have made a few notes on his answers at the end of the interview. Many thanks to Ingo for taking time to answer my questions, especially in so much detail - much more than I could have hoped for! :-)



Just in case you left your brain at home today, the questions are bold and prefaced with a Q - and the answers, er, not bold with no Q.




Q. In my best Cilla Black accent, "What's yer name an' where d'ya come from?"


My Name is Ingo Ruhnke in the real world, on IRC and web forums I use to call myself Grumbel. I am coming from good old Germany from a town called Bielefeld:



http://en.wikipedia.org/wiki/Bielefeld_Conspiracy



Q. And what do you do for a living?


I am going to end my studies soon, not yet sure what I will do after that, I thought a bit about turning into the independent game business, but not sure if I will actually do it in the end.



Q. What is your favourite open source game(s)?


Adonthell, since it happens to be one of the very few open source games that actually has story, characters and dialog, it also happens to have the best music of any open source games rivaling even that of many commercial titles. The gameplay of the game is very basic, but story, characters and stuff are just so good that its simply not an issue. Its not the longest game around, but the most interesting one.



Q. What is your favourite commercial game(s)?


That would be Another World and The Longest Journey.



Another World because it was and still is absolutely revolutionary in so many aspects. Its a very short game, but one that basically never repeats, every moment in it is uniq, the story, even so told without a word is absolutely stunning and the polygon based 2D graphic was something very different then everything else at its time. Its a game that simply lacks what makes video games look like video games and instead turns them into an interactive experience. And as if that wouldn't be already enough, its also a game that got created from start to finish by only a single person.



The Longest Journey on the other side is much more a classical adventure game, but one of the best. It improved on what LucasArts did in terms of interface and added an epic sci-fi/fantasy story into the mix like there is no other. I like games that feature interesting characters and worlds and The Longest Journey simply has tons of both.



Q. What games do you play at the moment, FLOSS or commercial?


At the moment not much, I don't yet own any of the next generation
consoles (still waiting for a price cut on the XBox360) and there
simply aren't much more games coming out for the current generation.
So I am kind of stuck there. My PC also happens to be not in the shape
any more for commercial PC games and that Vista Beta I am running
beside my Linux isn't exactly in the best shape either. However I
recently replayed AstroBoy Omega factor on the GBA, since thats my
favorite game for that machine and I also plan to have a deeper look
into my linux version of X2 soon.



In terms of FLOSS I don't really play much of those at all, I enjoyed
Adonthell a lot, had some fun with Neverball, but beside that I am not
interesting in most of the games



Q. What open source games have you worked on, preferrably in chronological order?


Lets see if I can get that figured out without forgetting anything:



In the very beginning I did some C64 Basic and QBasic applications,
most playable was a simple clone of that motorcycle game of the Tron
movie, another thing was a labyrinth/dungeon game, but that never went
anywhere and didn't got finished. All that stuff is available on the
net, but not very interesting for most people I guess:



pingus.seul.org/~grumbel/...qbasic.html



After those I moved on to C++ and coded Retriever, it was meant to be
an adventure game and written under DOS with DJGPP and Allegro, it
never went beyond a little demo in which you could walk through a few
screen, but I am currently recycling a few of the concepts for
Windstille.



pingus.seul.org/~grumbel/...-retriever.png



Closely after Retriever came Vect, a simple vector graphics editor,
that might be used to create the graphics for Retriever. Its kind of
usable, but not exactly very confortable, it again was coded primary
for DOS with DJGPP and Allegro.



pingus.seul.org/~grumbel/...-vect2.png

pingus.seul.org/~grumbel/...-vect.png



Then I moved onto Linux and switched from Allegro to ClanLib, my first
game then happens to be Pingus, a rather straight forward Lemmings clone with penguins, its
quite playable, but to this day not exactly finished.



http://pingus.seul.org/



Sometimes after that I did a tiny little bit work on TuxRacer, nothing
big, just a script for Gimp to make level creation a bit easier, a few
levels and a few bug reports.



The next game that I wrote from scratch was Feuerkraft, it was
somewhat inspired by the old Amiga game Firepower, but not a direct
clone, it has plenty of influence from games such as GTA and Operation
Flashpoint, as with most of my stuff, I never really finished it.



http://www.nongnu.org/feuerkraft/

Feuerkraft on video.google.com



Sometimes in between I did start Advent, which was basically a rewrite
from Retriever. I was trying to give it a proper scripting interface
and make it properly extensible, which Retriever really wasn't. One of
the results was Cosmos, a little demo game build on top of the engine,
due to library and binary incompatibilities it however might no longer
be playable today:



http://www.seul.org/~grumbel/tmp/advent.new/



Then came Freecraft aka Stratagus, a real time strategy engine along
the lines of Warcraft2. Its again a project where I didn't really
contribute much and only joined in rather late. For most part I simply
organize the rename from Freecraft to Stratagus that was needed after
the cease and desist letter from Blizzard, I picked up the bits and
pieces, did a new webpage and some stuff like that. I didn't ever
touch the engine itself.



http://www.stratagus.org/



In the follow up of the Stratagus rename came Robovasion, it was meant
as a little demo game to show that Stratagus can be used for other
games beside Warcraft2. While the basic design got quite finished, it
never got properly implemented due to some missing core features in
Stratagus. Since in the meantime there followed other games that made
use of Stratagus as an engine there soon was no longer a need for
Robovasion, so it never got finished.



http://www.nongnu.org/robovasion/



Construo is again a project I started myself and did most of the
coding. Its a simple particle+spring engine/editor, the game doesn't
have any goals, its more like LEGO bricks where you can just toy
around with and build your own stuff. Its one of the few games I did
that ever become fully playable, its not 100% feature complete, but
what it does, it does quite well:



http://www.nongnu.org/construo/



Sometime after that came Windstille, it started as a little recreation
of Turrican style gameplay, but soon moved on to became something very
different. A little demo with Turrican style gameplay was however
released:



Windstille on video.google.com



netPanzer was kind of interesting, one day I got a email of one of the
original creators who asked me if I had some use for the code in
Feuerkraft, since Feuerkraft was a 2D action game, not a stratagey one
I declined. Since the netPanzer project didn't went anyway after a
year I contacted them again if they still want to do anything with the
code, they agreed that it would be ok to OpenSource it and so I build
a little webpage and announced it on happypenguin.org. Soon after the
announcement was done some people picked it up and ported it to Linux,
I again didn't really touch much of the code, but simply did a bit
organisation here and there.

http://netpanzer.berlios.de



A while after that Happypenguin GoTM was born, it was a project meant
to pick every month a open source game and improve some key aspects
of it. We started with SuperTux and joined an already ongoing effort
to bring the old SuperTux into a clean shape. I did most of the
graphics, some code and around half of the levels of the reborn
SuperTux Milestone1.



http://www.happypenguin.org/forums/viewtopic.php?t=1243

http://supertux.lethargik.org



After SuperTux was done, some people moved on to TuxKart, we didn't
manage to turn it into a playable game and had to fork it due to some
issues, but plenty of new graphics got done and some unfinished
improvements where done. A while after the SuperTuxKart code was
picked up by some other people and the project is quite alive know
gain:



http://supertuxkart.berlios.de/



Then GotM picked LinCity and we gave that game some new graphics and
user interface, I modeled most of the 3D buildings, while other people
worked on the code and interface graphics. The project got mostly
finished, however I still consider it a failure since one of the key
problems wasn't addressed, namely the game still misses a proper
tutorial and some game elements just don't make any sense.



Windstille also got picked up by GotM, while we didn't manage a
release, it got a large over vault and its the game that I am
currently still working on. Beside from that I am also a little bit
working on getting SuperTux Milestone2 done.



Q. Of the above, do you have a favourite?


Construo is probably my best game that nobody knows about, its plain
and simple and actually fun to play, while many of the other projects
never went that far and got stuck somewhere earlier. It happens to be
the only of my games that I can actually enjoy playing. Beside from
that there is also Windstille, since that game is in some part based
on Retriever and I am kind of working on it for like 10 years I have
grown pretty attached to it.



Q. What attracted you to developing & contributing to open source
games rather than selling your efforts as shareware or commercial
titles?


Rather simple: Money means trouble, no money means a smooth ride. If I
open source it I don't have to care about advertising, publishers and
whatever, I can simply concentrate on the game and do whatever I like
instead of trying to figure out what would actually sell. Open Source
also gives the freedom to recycle bits and pieces from other project
much easier. Its also much easier to accept contributions when no
money is involved.



That said, all this is of course only true as long as you don't need
the money and do it in your spare time, when you actually want to make
a living out of writing games Open Source doesn't seem to be much of a
good choice.



Q. From your experiences, what would you say are the best tips for
making a successful open source game?


I think the by far two most important things are this:



Figure out what exactly you want to do before announcing the game to
the public. Sounds simple, but many Open Source games completly fail
on that, people tweak around an engine for month and years without
anybody having a clue where the whole game is actually going. So they
never really go anywhere with their project, but just running around
in circles forever.



Don't expect anybody else to help you, be prepared to do everything
yourself. When you do a Open Source game you won't magically get
contributions, you might get none at all, so you shouldn't depend on
them to get the job done, but instead be prepared to do everything
yourself.



Q. What are the things to avoid, the things that make FLOSS game
development fail?


One simple rule would be to not start a new project, ever. Try to join
one of the already ongoing Open Source projects, if you don't see them
going anywhere, hijack them and give them some direction. A goalless
project can often be very easily turned into a different direction, it
just requires that you actually know exactly where you want to be
going.



Another thing: Don't aim to low. Of course you shouldn't try to do
Doom3 when you don't have a clue about 3D programming, but there
simply isn't a need for yet another Tetris clone, we have by far
enough of that. If you try something new, try to actually make
something new, don't just recreate something for which there already
exist dozens of recreations.



Q. If you could take one abandoned FLOSS game and restore it's
development (excluding your own titles!) which would it be?

Liquidwar, that game has a pretty cool concept, but rather ugly
interface and graphics, it could definitvly need some additional
polish and improvements.



My favorite Adonthell also needs a new release, it has been going
forward very slowly in the last years and could definitvly need a
solid push.



Q. What are your future game development plans and which of your
games do you hope to see come to fruition in the near future?


I currently do a lot of work on Windstille, a lot of which actually
isn't even very relevant to the game itself (i.e. history, ship
design, etc.). I am more or less trying to create a little universe
instead of just what I would need for a simple 2D action adventure.
If I ever get done with Windstille itself, I probably turn some of
that additional material into a game of its own. One thing I always
wanted to do was a realistic mech simulation, kind of an Operation
Flashpoint in space type of game. However knowing that such a game
would require a loooonnnggg time I prefer to stick for the moment with
my simple 2D game in the Windstille universe, since even that is
already hard enough of a thing to get done.




Interview Notes



No comments:

Post a Comment