Interview with Freebooters authors

Posted 22 Sep 2005 at 12:03 UTC by yeupou Share This

Freebooters is a colne of Sid Meier classic "Pirates!". Follows and interview with the authors of Freebooters (Moritz Muehlenhoff, Christoph Dwertmann, "Kabutor" Esteban Fernandez, Erno Szabados) made for Gna!'s hotspot #7.

The interview:

Gna: Hello, Can you give a two line description of your project your grandma(s) could understand?

Moritz: It's a game, in which the player strifes to become the most successful pirate in the Caribbean Sea during the golden age of piracy.

Christoph: Trade simulation, strategy and action in a pirate setting.

G: Who are you? How many developers contribute regularly? How is the project leaded? What is the profile of the main developers?

M: I'm a student of computing science at the University of Bremen. There have been contributions by various people, but all in all Freebooters has three main developers, Christoph and I wrote the initial version, I've been doing most of the coding since the release and Kabutor has done most of the graphics and also some coding.

"Kabutor" Esteban: I'm a computer technician, self-employed bloody Spaniard pirate ;) The project is on a slow motion at the moment, we have to re-start several things from scratch and that takes time. We need to set some short-term objectives and move in that direction, hopefully when Moritz finish the Diploma.

C: I'm a computer science student interested in C++ programming and Freebooters is a good way for me to check out the SDL features and write a multi-platform application. I've implemented most of the sea-battle action and created the graphics for that part.

G: When and why was the project started?

M: The initial stages were part of a course in Game Development at the University of Bremen. Afterward we decided to make it free software and moved it to gna.org.

C: Last year we did this "Computer Games" course at our University. Most people came up with horizontal or vertical shooters or racing games, we wanted to have something different. Our initial idea was a sailing race, which was implemented and then extended to a full blown strategy games with sailing action.

G: And what audience are you targeting exactly? Geek, Grandma?

C: Swashbuckling pirates! Arrrrr!

M: It's not in a grand-ma friendly state, but it hopefully will become so.

G: Is your software already usable to have a good time, in your opinion? What features are you missing/planning?

C: It's mostly playable. The strategy part may need some fine tuning, and the action part could use some nifty 3D graphics though.

M: You can play already, but the gameplay isn't fully developed and many features are still missing. The tech isn't fully developed either. Missing features are:

- 3D system needs to revamped
- Sea-battles need to be implemented in 3D as well, older releases had 2D SDL battles, but they've been removed for now
- Fully navigable world map (the data is already there, generated from geo data from some US agency)
- Sea-Harbor attacks are missing
- Missions etc. are still missing
- Fencing duels are missing
- All microsimulations need to be refined
- Some more

G: When 0.2.2 was released, you mentioned the next release 0.3. Is there and estimated time of arrival for this release?

M: During the last months development has stalled a bit. One element is that I'm currently writing my diploma thesis and I don't have much free time. The other side have been technical problems with our 3D engine. Right now we've been using Ogre3D, but it has several technical obstacles:

- The Ogre developers typically use Windows or GNU/Linux with proprietary Nvidia drivers, so you often encounter problems with the free DRI drivers from XFree/X.org. These problems are also hard to debug.
- An important piece of the 3D engine (a dynamically tilable world map) is only available as an external plugin, which causes many problems
- The Ogre GUI system is rather new, badly documented, complex and developed under Windows (although ported to GNU/Linux). In the 0.2.2 release the GUI system is a self-developed SDL based menu system, which is really hard to integrate into the 3D world.

I've been looking into some 3D engines and right now Soya looks very promising. It's very easy to use, developed by people who grasped the concept of free software (most Ogre3D devs develop proprietary software) and who are using the free DRI drivers and the GUI system is very good as well. It's written in Python, though, but all performance critical parts are handled by OpenGL anyway.

A switch to Python might seem radical, but one should keep in mind that a lot of code is no longer useful anyway (e.g. the 2D based menus and the 2D battles), and that a lot of development effort was going into game logic, not in the implementation. And development in Python is a lot more efficient wrt to developers's time, which is definitely the resource we're shortest of.

So, development will definitely continue, but 0.3 might take some time. It might be a nice Christmas present, e.g.

G: Which license did you choose and why?

M: The GPL, because it ensures the maximum of software freedom.

Erno: My contribution is dual licensed under GPL and Creative Commons. I prefer CC, but Moritz asked me for a GPL license, so the project can be a part of the Debian effort.

G: Do you have any industrial or institutional support? If any, how so?

M: No, it's a game. Commercial backing is generally low for games :-)

C: We got some initial support on SDL programming in our university lecture about games programming, but we figured out the most stuff by ourselves.

G: Are you looking for contributions? If so, what kind of contributions could be of use to the project?

M: Definitely. We need developers, 3D artists (Blender), 2D artists (menus and such) and musicians. And of course game designers and testers.

G: What tools do you use when working on the project? Why?

M: Personally I'm using Emacs for development, the build system is made in shell and make. I avoided the GNU autotools, because they tend to cause more problems than the solve.

K: I use vim.

C: I just used emacs and gdb for programming and GIMP for the graphics. Creating the Win32 version required MinGW32 and Nullsoft Installer.

E: I used Inkscape (and to a minor extent, Gimp). These are libre software, and pretty potent tools.

G: Why did you choose Gna! as host? What Gna! tools do you use? Which features do you like most? Which features miss you most?

M: Gna! was chosen because it was run by people who focus on free software and because it was not so crowded/slow as your big competitor. We're using the homepage, the download service and the CVS. They're all very reliable, thank you very much. Additional valuable services would be support for SVN repositories and a project specific wiki.

(NDG: Actually, SVN is available since a few month, you should subscribe to the "news" mailing-list to be kept in the loop :P )

G: What is the question we didn't asked you would like to answer? (and the answer is...)

M: You missed the "emacs/vi" question, but I already gave the answer above :-)

C: I guess you would have asked "Can you play the French?" - "Yes you can!" :-)

K: Well you miss to ask if there was going to be multiplayer in the game, and the answer is no, single player only :)

G: Well, why is it so? We know guys that almost no longer play to games that are not networked :(

M: Way too much added complexity, plus the gameplay doesn't really fit into being multiplayer. Even Sid Meier, who seems to have made a computer game about being a pirate as well, didn't add a multiplayer mode into his 2004 remake.

Screenshots:

Sail to harbors in the Caribbean Sea
Hire crew in a tavern
Trade goods
Enemy ship on sight
Seebattle

Links:

Page of the interview Project Page at Gna!

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!

X
Share this page